Selenium Webdriver Python 并排使用
有没有办法在同一个程序里同时使用selenium和webdriver的功能?我想要截个屏,但在执行“.capture_entire_page_screenshot(...)”这个命令的时候,selenium就崩溃了。
2 个回答
0
你能详细说说你遇到的错误是什么吗?也许你的代码哪里出了问题。对我来说,这在Selenium 1中运行得非常好:
from selenium import selenium
import unittest, time, re
class IIIAppforloop(unittest.TestCase):
def setUp(self):
self.verificationErrors = []
self.selenium = selenium("localhost", 4444, "*firefox", "http://www.yahoo.com/")
self.selenium.start()
def test_i_i_i_appforloop(self):
sel = self.selenium
sel.open("/")
sel.wait_for_page_to_load(60000)
sel.capture_entire_page_screenshot(r"C:\picture.png", " ")
def tearDown(self):
self.selenium.stop()
self.assertEqual([], self.verificationErrors)
if __name__ == "__main__":
unittest.main()
1
我不建议把SeleniumRC(版本1的接口)和WebDriver(版本2的接口)混在一起使用。这样做只会让事情变得更加麻烦,而没有任何好处。
如果你在用WebDriver,有没有试过
import contextlib
import selenium.webdriver as webdriver
with contextlib.closing(webdriver.Firefox()) as driver:
driver.implicitly_wait(10)
driver.get('http://www.google.com')
# driver.get_screenshot_as_file('/tmp/google.png')
driver.save_screenshot('/tmp/google.png')