C# 使用Selenium Webdriver C仅拍摄视口(Firefox和IE)的屏幕截图,而不是整个页面#

C# 使用Selenium Webdriver C仅拍摄视口(Firefox和IE)的屏幕截图,而不是整个页面#,c#,selenium,selenium-webdriver,browserstack,C#,Selenium,Selenium Webdriver,Browserstack,我在Browserstack上使用SeleniumWebDriver自动测试,当我在Firefox和IE上截图时,它会截图整个页面。但是,由于我的页面包含一个很长的列表,截图太长,因此图像不清晰,很难看到页面的行为是否正确。我需要它像Chrome一样精确:只显示视口宽度和高度的屏幕截图。在Firefox和IE上可能吗 我使用的代码是: Screenshot ss = ((ITakesScreenshot)driver).GetScreenshot(); ss.SaveAsFile(imageSa

我在Browserstack上使用SeleniumWebDriver自动测试,当我在Firefox和IE上截图时,它会截图整个页面。但是,由于我的页面包含一个很长的列表,截图太长,因此图像不清晰,很难看到页面的行为是否正确。我需要它像Chrome一样精确:只显示视口宽度和高度的屏幕截图。在Firefox和IE上可能吗

我使用的代码是:

Screenshot ss = ((ITakesScreenshot)driver).GetScreenshot();
ss.SaveAsFile(imageSave, System.Drawing.Imaging.ImageFormat.Png);

升级至
Selenium 3
版本

Selenium 2.*
版本中,完整的网页作为屏幕截图

Selenium 3.*
version中,仅将网页的可见部分作为屏幕截图

因此,只要升级selenium版本,就可以实现这种行为,同样的代码也应该可以工作

发件人:


我用
Chrome和Firefox中的
Selenium 3.0.2
Python
中验证了这种行为

from selenium import webdriver

driver = webdriver.Firefox()
driver.get('http://stackoverflow.com/users/2575259/naveen')
driver.get_screenshot_as_file('D:/Naveen/so/google.png') 
driver.quit()

升级至
Selenium 3
版本

Selenium 2.*
版本中,完整的网页作为屏幕截图

Selenium 3.*
version中,仅将网页的可见部分作为屏幕截图

因此,只要升级selenium版本,就可以实现这种行为,同样的代码也应该可以工作

发件人:


我用
Chrome和Firefox中的
Selenium 3.0.2
Python
中验证了这种行为

from selenium import webdriver

driver = webdriver.Firefox()
driver.get('http://stackoverflow.com/users/2575259/naveen')
driver.get_screenshot_as_file('D:/Naveen/so/google.png') 
driver.quit()

你可以用内置的Windows截图截图,然后保存到新的fileTnx中。我必须手动裁剪吗?这是大量的图像-这是不可能的。有没有办法使它自动化@Steve@buca是的,您可以使用WindowsAPI来获取窗口的位置和大小,然后您可以使用基于位置的代码来裁剪它/size@Steve我会试试的。你可以用内置的Windows截图截图,然后保存到新的文件中。我必须手动裁剪吗?这是大量的图像-这是不可能的。有没有办法使它自动化@Steve@buca是的,您可以使用WindowsAPI来获取窗口的位置和大小,然后您可以使用基于位置的代码来裁剪它/size@Steve我会试试的,Safari和IE不是这样的