我正在编写一个程序,通过搜索查询爬行。
它对大多数人来说都很好,昨晚的480个冠军也是如此。但是使用相同的代码,它会继续返回以下内容。
在不同的标题下,有一次,第二个查询页面的第八个标题可能会出现一个错误,而另一个时候,第一个页面的第六个标题会弹出一个错误等等。
我完全不明白为什么它以前是好的,为什么它现在是这样的行为。我希望你能给我一些建议。
我正在使用Anaconda -木星笔记本,Selenium (4.1.0)。还有Python。
WebDriverException Traceback (most recent call last)
<ipython-input-100-21e892bd2f24> in <module>
1 #to_next_page(browser)
----> 2 crawl_page(browser)
3 #x = XPath_finder(10, browser)
4 #x.click()
<ipython-input-95-32c6665608a1> in crawl_page(browser)
10 # 본문 구하는 부분
11 for i, _ in enumerate(page_titles, 1):
---> 12 XPATH = XPath_finder(i, browser)
13 XPATH.click()
14 bs2 = BeautifulSoup(browser.page_source, 'html.parser')
<ipython-input-96-1904e01f1b97> in XPath_finder(i, browser)
1 def XPath_finder(i, browser):
----> 2 elements = browser.find_elements(By.CLASS_NAME, 'txt_wrap')
3 target = elements[i-1].find_element(By.TAG_NAME, 'a')
4 return target
C:\ProgramData\Anaconda3\lib\site-packages\selenium\webdriver\remote\webdriver.py in find_elements(self, by, value)
1277 # Return empty list if driver returns null
1278 # See https://github.com/SeleniumHQ/selenium/issues/4555
-> 1279 return self.execute(Command.FIND_ELEMENTS, {
1280 'using': by,
1281 'value': value})['value'] or []
C:\ProgramData\Anaconda3\lib\site-packages\selenium\webdriver\remote\webdriver.py in execute(self, driver_command, params)
422 response = self.command_executor.execute(driver_command, params)
423 if response:
--> 424 self.error_handler.check_response(response)
425 response['value'] = self._unwrap_value(
426 response.get('value', None))
C:\ProgramData\Anaconda3\lib\site-packages\selenium\webdriver\remote\errorhandler.py in check_response(self, response)
245 alert_text = value['alert'].get('text')
246 raise exception_class(message, screen, stacktrace, alert_text) # type: ignore[call-arg] # mypy is not smart enough here
--> 247 raise exception_class(message, screen, stacktrace)
248
249 def _value_or_default(self, obj: Mapping[_KT, _VT], key: _KT, default: _VT) -> _VT:
WebDriverException: Message: target frame detached
(Session info: chrome=100.0.4896.88)```
发布于 2022-04-17 22:20:55
当你看到错误信息时..。
WebDriverException: Message: target frame detached
在您使用的二进制文件版本之间,incompatibility可能是...indiscriminately的一个可能原因。
解决方案
确保:
tl;dr
https://stackoverflow.com/questions/71904350
复制相似问题