zoukankan      html  css  js  c++  java
  • 使用Selenium进行浏览器自动化操作记录

    一位经验丰富的同事交给了我一个任务:将20个IP地址添加到公司系统对应的目录下。

    这个任务之前做过,并且数量是远不止20个,当时就学习Selenium并且使用Python3.6写了一个脚本用来自动化地跑;可是任务做完之后电脑由于Hyper-V服务出现了致命错误无法启动,只能重装系统,于是我的Python环境和代码就这样丢失了。

    当今天重新遇到这个问题的时候,虽然任务量不是很大,但是我想还是用Python实现算了吧,毕竟也只有那么几行代码。

    于是开始我的重新学习之路:

    首先下载安装了Python2.7(这次下载了的是2.7版本,它默认安装到了与Program Files同级的目录下),安装完成之后我手动为当前用户添加了环境变量,再利用pip功能安装了selenium模块,于是Python2.7目录下就多了一个文件夹(名称是Selenium),然后我把代码(此处省略代码思路的思考及手写并导入记事本的过程)用IDLE开发工具打开,出现了熟悉的代码界面,我点击运行,出现了如下所示的错误:

    然而这个错误是由于我主动关闭了Chrome浏览器才导致的(关闭Chrome的原因是在执行脚本之后立刻出现了Window系统错误,提示:Chromedriver.exe has stopped blabla,并且必须关闭这个错误提示才能查看浏览器细节信息,于是就只能关闭了,关闭之后就报了上面截图的这个错误),遇到这个问题之后我就在Google上找问题出现的原因,大部分Stackoverflow上的回答者给出了跟我问题描述一致的解决方案,有一些说是因为url的格式不正确(不是我的解决方案),有一些说是版本不正确。在我探索了很久之后,发现果然是版本不正确。于是我去下了当前最新的版本(Chromedriver2.37版本)。结果:执行正确。

    看来版本对于Chromedriver在python环境下运行很重要。当然Selenium安装完之后是自带了对Firefox的支持,所以如果使用了Firefox那就不用担心版本问题。

  • 相关阅读:
    jquery tmpl 模板引擎 取小数点 三目运算
    ztree 根据id选中某一点且触发当前点的click事件
    rgb(123,25,62)拆分
    html5 vedio
    同一个dom上加单击事件和双击事件的冲突解决办法,双击事件方法进不去
    axios拦截器
    foreach、for、for in循环方式
    echarts markline 不同颜色
    组件里传值到父级
    vue路由钩子拦截器beforeEach和afterEach及页面路由变化路由监听
  • 原文地址:https://www.cnblogs.com/ericwonne1996wangqifan/p/8759092.html
Copyright © 2011-2022 走看看