selenium chrome driver运行时的cannot determine loading status from target frame detached问题
前言
最近在做本科毕业论文,计划用chrome driver爬取敦煌网,但是在爬取的过程中遇到了以下的问题,一直提示unknown error: cannot determine loading status from target frame detached。
WebDriverException Traceback (most recent call last)
WebDriverException: Message: unknown error: cannot determine loading status
from target frame detached
(Session info: chrome=99.0.4844.51)
1.chrome 和chrome driver版本问题
在网上看到有人说这是因为Google chrome和chrome driver的版本不兼容问题,但是我检查过我的软件版本之后发现不能帮助解决这个问题。
2.关闭科学上网软件
问题解决,好无厘头的错误原因啊。
3.换用BeautifulSoup
问题解决,selenium速度慢效率低,换用BeautifulSoup更加快速高效。
但是我在使用BeautifulSoup时多次出现timeout的报错,以下是我的两个解决方案。
1.设置断连时重新连接五次
requests.adapters.DEFAULT_RETRIES = 5
2.报错后强制sleep20秒
errortime = 0
try:
page_data = requests.get(page_url)
except OSError:
if errortimes == 0:
print("出错了!!!!!连接不上了!!!!!" + page_url)
time.sleep(20)
page_data = requests.get(page_url)
print("已经尝试重新连接了!!!!!")
else:
print("又出错了呀!!!!!" + page_url)
time.sleep(20)
page_data = requests.get(page_url)
print("已经尝试重新连接了!!!!!")
errortimes += 1
4.总结
作为爬虫小白真的踩了好多好多有意义和无意义的坑,毕竟困难总比办法多!!!
哪里写得不好或写错也请您指正!!!