您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

尝试使用selenium和python登录网页时出错

尝试使用selenium和python登录网页时出错

Selenium与用户与Web浏览器的交互方式类似。因此,如果您尝试与之交互的html元素不可见,那么最简单的解释是,当您编写硒代码时,您不会像普通用户那样与网页进行交互。

最后,这与网页的html无关,与DOM和元素的hidden属性无关。我建议您下载Firebug或其他一些html查看器程序,然后突出显示要按下的按钮。对html查看器使用DOM查找,并手动完成登录过程。注意您必须要做的是使元素可见以便与之交互,然后模仿硒代码中的相同步骤。

如果您确实做了所有必要的事情,但是硒与网页的交互速度比javascript使元素可见的速度快,那么您就需要进行编程了。

天真的方法

import time
time.sleep(1) # this is done in seconds

更具扩展性的方式:

import time

welcome_button = browser.find_element_by_class_name('welcomeLoginButton')

wait_for_element_visibility(welcome_button).click()

def wait_for_element_visibility(element):
   if element.is_visible():
      return element
   else:
      for i in range(10):
         if not element.is_visible():
            time.sleep(.5)
         else:
            return element
python 2022/1/1 18:13:33 有784人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶