Python 使用 Selenium 定位 404 错误 if else 条件



>条件语句 - 尝试,除了,否则 -

我正在使用Selenium/Python来自动执行一些下载和上传文件的任务。

有没有办法让Selenium/Python识别页面是否加载为404?即我在下面的"尝试"尝试。

我的目标是让脚本在加载为 404 错误时关闭选项卡并循环,直到找到可下载的文件。该文件是 PDF。

我尝试使用 XPath 搜索特定文本,例如:

"此外,在尝试使用错误文档处理请求时遇到 404 未找到错误"- 但不确定所需的正确编码。我是新手,所以感谢您对我的宽容。

下面是脚本的底部,它也处于循环中 - ("图标"是下载按钮,显示在可下载页面上,但不显示在 404 页面上)

try:
Download = driver.find_element_by_id('icon')
if Download == driver.find_element_by_id('icon'):
raise Exception
except Exception:
pyautogui.time.sleep(2)
pyautogui.hotkey('ctrl','s')
pyautogui.time.sleep(2)
pyautogui.hotkey('enter')
pyautogui.time.sleep(2)
pyautogui.hotkey('ctrl','w')
pyautogui.click(771, 374, duration=0.55)
pyautogui.click(867, 276, duration=0.55)

else:
pyautogui.time.sleep(2)
pyautogui.hotkey('ctrl','w')
pyautogui.time.sleep(2)
pyautogui.doubleClick(79, 136, duration=0.55)
pyautogui.time.sleep(15)
pyautogui.click(642, 442, duration=0.55)
pyautogui.time.sleep(2)
pyautogui.hotkey('ctrl','s')
pyautogui.time.sleep(2)
pyautogui.hotkey('enter')
pyautogui.time.sleep(2)
pyautogui.hotkey('ctrl','w')
pyautogui.click(771, 374, duration=0.55)
pyautogui.click(867, 276, duration=0.55)

上面的代码在加载 404 网页时不会关闭它。相反,脚本保存网页404而不是尝试脚本的"Else"部分。

感谢您的帮助!(如果我能投赞成票,我会的。

Webdriver 不会捕获 http404,这在 API 中没有实现,也不会,请检查他们的问题跟踪器。你可以只使用python,也许这会有所帮助。

最新更新