设置:
我很难理解为什么我会出现这个错误,如果有任何帮助,我将不胜感激。我正在浏览一个使用selenium Python的无头浏览器(Firefox)访问的网站列表。它一开始运行正常,但随后在driver.get
方法中随机出现超时错误。回溯:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/Users/blujay95/projects/crawler/extract.py", line 333, in get_product_page_data
self.browser.get_url(full_url)
File "/Users/blujay95/projects/crawler/requestor.py", line 83, in get_url
File "/Users/blujay95/.pyenv/versions/dora-3.8.7/lib/python3.8/site-packages/selenium/webdriver/remote/webdriver.py", line 333, in get
self.execute(Command.GET, {'url': url})
File "/Users/blujay95/.pyenv/versions/dora-3.8.7/lib/python3.8/site-packages/selenium/webdriver/remote/webdriver.py", line 321, in execute
self.error_handler.check_response(response)
File "/Users/blujay95/.pyenv/versions/dora-3.8.7/lib/python3.8/site-packages/selenium/webdriver/remote/errorhandler.py", line 242, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.TimeoutException: Message: TimedPromise timed out after 300000 ms
此时,我必须退出当前的驱动程序对象,启动一个新的驱动程序对象,然后继续访问url列表。过了一段时间,它又遇到了这个问题
希望获得有关如何诊断此问题的任何帮助
添加一个代码片段,在循环浏览要访问的网站列表时调用该代码片段。请求者对象是webdriver对象
class exampleObject:
...
def start(self):
if self.method == 'SELENIUM':
options = webdriver.FirefoxOptions()
options.headless = False
options.add_argument("user-agent=Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.125 Safari/537.36")
self.requestor = webdriver.Firefox(options=options)
def get_url(self, url):
self.response = self.requestor.get(url)
time.sleep(3)
目前没有回答
相关问题 更多 >
编程相关推荐