• 爬虫-Selenium -抱错ElementNotVisibleException: Message: element not visible


    1.当使用Selenium IDE 完成了脚本的录制和回放通过后,想要将脚本转换为其他语言如java、Python等,首次使用时打开Options-》Format发现没有可以转换的语言,如下:

    这个时候需要设置一下,打开Options-》Options,勾选如下选项允许扩展功能,如下:

    保存后重新打开Options-》Format,就可以将脚本转换成你想要的语言来显示,如下:

    点击转换后,就可以将脚本装换成你想要的语言来表示,如转换成Python语言的脚本:

    Selenium Webdriver

    1.使用chrome浏览器运行脚本的配置

    首先需要下载chromedriver,下载可以到如下地址自由选择下载版本,我选择最新的V2.9版本(我的是放在和Python安装路径目录下):

    http://chromedriver.storage.googleapis.com/index.html

    下载完成后,将chromedriver解压缩,将当前存放ChromeDriver.exe的路径加到系统变量path路径下:

    完成后就可以在脚本中通过调用ChromeDriver来运行Chrome浏览器执行脚本:

    2.当出现如下错误时:ElementNotVisibleException: Message: element not visible,表示元素初始是不可见,首先确保你的定位没有问题后,有可能是因为页面加载没有完成导致无法定位到该元素,可以通过添加:

    time.sleep(5)  #延时5秒

    解决问题,延时时间自己根据实际情况确认,一般在页面跳转或打开不同页面是需要添加。

    3.当出现如下错误:Element is not clickable at point

    主要原因是这个按钮不是可点击的按钮,可以根据错误提示进行替换备用按钮;或者由于该按钮被其他东西阻挡(弹框、浏览器没有最大化)导致无法点击,可以根据时间情况修改。

    ps:我就是没有把浏览器最大化导致点击失败的!囧

    4.selenium出现click单击无效无效的情况如何处理?

    一般出现click单击无效的情况,主要是由于失去了跳转点击时出现失去焦点的问题(具体原因未知),可以参考解决方法:

    (a)点击前先按下tab键(其他按键也可以考虑)再进行点击可以解决:

    driver.find_element_by_xpath(".//*[@id='dologin']").send_keys(Keys.TAB)
    driver.find_element_by_xpath(".//*[@id='dologin']").click()

    (b)也可以考虑点击2次可以解决:

    driver.find_element_by_xpath(".//*[@id='dologin']").click()

    driver.find_element_by_xpath(".//*[@id='dologin']").click()

    5.当出现如下错误selenium.common.exceptions.StaleElementReferenceException: Message: stale element reference: element is not attached to the page document,意思是页面元素没有连接成功,一般是由于返回或刷新页面导致丢失,解决版本可以参考:

    (a)重新刷新加载页面

    (b)重新获取页面元素

    6.Selenium webdriver启动chrome浏览器出现提示:--ignore certificate errors

    解决办法如下(在启动driver时添加一个选项,将提示去除即可):
    option=webdriver.ChromeOptions()
    option.add_argument("test-type")
    driver = webdriver.Chrome(chrome_options=option)
     
     
     
  • 相关阅读:
    项目知识
    设计师如何为 Android 应用标注尺寸
    Android开发注意事项
    线程的同步和异步
    复习:IPC机制
    简单的Mvp设计
    泛型
    RxBus的使用
    LinearLayout遇到的问题——利用LinearLayout做横向滑动冲突
    Google搜索技巧、使用Google的其它专业搜索
  • 原文地址:https://www.cnblogs.com/Amos-Turing/p/8243365.html
Copyright © 2020-2023  润新知