python+selenium实现自动化:自动打开网页并实现刷新
selenium一个 web 的自动化测试工具免费且可以和各种语言结合,无论是C、 java、ruby、python、 C# ,都可以通过 selenium 完成自动化测试selenium+Python(Python3.5及以上版本)1.安装selenium包运行窗口执行:pip install -i https://pypi.douban.com/simple gensim等待完成。2.启动浏览
selenium
一个 web 的自动化测试工具
免费且可以和各种语言结合,无论是 C、 java、ruby、python、 C# ,都可以通过 selenium 完成自动化测试
selenium+Python(Python3.5及以上版本)
1.安装selenium包
运行窗口执行:
pip install -i https://pypi.douban.com/simple selenium
等待完成。
2.启动浏览器
启动Chrome浏览器:
webdriver.Chrome()
启动Firefox浏览器:
webdriver.Firefox()
启动IE浏览器:
webdriver.Ie()
以Chrome为例:
需要下载驱动chromedriver.exe,注意chromedriver的版本要与你使用的chrome版本对应,否则报错
下载地址☞http://npm.taobao.org/mirrors/chromedriver/
直接下载压缩包,在指定路径解压即可
简化版代码:
# coding = utf-8
import time
from selenium import webdriver
def refresh():
driver = webdriver.Chrome("chromedriver.exe的路径")
url = "http://……" #网页地址
driver.get(url)
try:
for i in range(10):
time.sleep(1)
driver.refresh() #调用webdriver中刷新页面的方法
print (i) #记录刷新次数
except Exception as e:
print ("Exception found", format(e))
driver.close()
if __name__ == "__main__":
refresh()
启动报错:
Failed to read descriptor from node connection
解决方法:
在路径前加上resource_path或
executable_path,如下
webdriver.Chrome(executable_path='C:\webdriver\chromedriver.exe') # to open the chromebrowser
driver.get("https://web.whatsapp.com")
中途报错:
Traceback (most recent call last):
File "C:\Users\Administrator\Desktop\jjF5.py", line 18, in <module>
refresh()
File "C:\Users\Administrator\Desktop\jjF5.py", line 11, in refresh
driver.refresh()
File "E:\Anaconda\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 831, in refresh
self.execute(Command.REFRESH)
File "E:\Anaconda\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 321, in execute
self.error_handler.check_response(response)
File "E:\Anaconda\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 242, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.TimeoutException: Message: timeout: Timed out receiving message from renderer: 299.997
(Session info: chrome=88.0.4324.104)
运行过程中偶尔会报超时异常,确定不是驱动版本和浏览器版本的问题,所以做了一个异常处理,把异常抛出。
还可以更换浏览器试试。
try:
driver.get("https://web.whatsapp.com/")
except TimeoutException:
# You can write retry code here
更多推荐
所有评论(0)