一位经验丰富的同事交给了我一个任务:将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那就不用担心版本问题。

使用Selenium进行浏览器自动化操作记录的更多相关文章

  1. splinter python浏览器自动化操作,模拟浏览器的行为

    Splinter可以非常棒的模拟浏览器的行为,Splinter提供了丰富的API,可以获取页面的信息判断当前的行为所产生的结果   最近在研究网站自动登录的问题,涉及到需要实现浏览器自动化操作,网上有 ...

  2. Python实现浏览器自动化操作

    Python实现浏览器自动化操作 (2012-08-02 17:35:43) 转载▼     最近在研究网站自动登录的问题,涉及到需要实现浏览器自动化操作,网上有不少介绍,例如使用pamie,但是只是 ...

  3. [转载]Python实现浏览器自动化操作

    原文地址:Python实现浏览器自动化操作作者:rayment   最近在研究网站自动登录的问题,涉及到需要实现浏览器自动化操作,网上有不少介绍,例如使用pamie,但是只是支持IE,而且项目也较久没 ...

  4. Saltstack自动化操作记录(2)-配置使用 【转】

    之前梳理了Saltstack自动化操作记录(1)-环境部署,下面说说saltstack配置及模块使用: 为了试验效果,再追加一台被控制端minion机器192.168.1.118需要在master控制 ...

  5. Saltstack自动化操作记录(1)-环境部署【转】

    早期运维工作中用过稍微复杂的Puppet,下面介绍下更为简单实用的Saltstack自动化运维的使用. Saltstack知多少Saltstack是一种全新的基础设施管理方式,是一个服务器基础架构集中 ...

  6. Saltstack自动化操作记录(2)-配置使用

    之前梳理了Saltstack自动化操作记录(1)-环境部署,下面说说saltstack配置及模块使用: 为了试验效果,再追加一台被控制端minion机器192.168.1.118需要在master控制 ...

  7. Saltstack自动化操作记录(1)-环境部署

    早期运维工作中用过稍微复杂的Puppet,下面介绍下更为简单实用的Saltstack自动化运维的使用. Saltstack知多少Saltstack是一种全新的基础设施管理方式,是一个服务器基础架构集中 ...

  8. Python—selenium模块(浏览器自动化工具)

    selenium可以用来完成浏览器自动化相关的操作,写一些代码制定一些基于浏览器自动化的相关操作(行为动作),当代码执行后,浏览器就会自动触发相关的事件 安装方法: pip install selen ...

  9. python下selenium模拟浏览器基础操作

    1.安装及下载 selenium安装: pip install selenium  即可自动安装selenium geckodriver下载:https://github.com/mozilla/ge ...

随机推荐

  1. python 基础语法练习回顾

    #!/usr/bin/python# -*- coding: UTF-8 -*-import timeimport calendar student = {"age": 7,&qu ...

  2. python中对文件和文件夹的操作

    一.说明 python中主要通过os模块和shutil模块两个模块对文件进行相关操作,移动.复制.删除.重命名.比较大的文件通过命令操作可以节省时间,提高效率. 二.实例对文件夹中文件的拷贝 from ...

  3. 获取上一页面url

    console.log(window.location.host); #js获取当前域名 console.log(window.location.href); #js获取当前url console.l ...

  4. 版本控制commit和update过程

    很早就使用了git.后来还管了一个VSS,但长时间以来git和VSS基本都当ftp使用,顶多知道其有回退旧版本的功能,但对“版本控制”这个词一直以来都没领会其内含. 比如我一直担心两个问题,一是拉取下 ...

  5. JSP之mysql中文乱码问题

    查看数据库编码方式 show variables like 'character%'; 关于jsp页面插入数据库乱码问题. 我遇到的问题是插入数据库后后台select * from tablename ...

  6. day21_python_1124

    01 昨日内容回顾 类与类之间的关系: 依赖关系:将一个类的对象或者类名传到另一个类中. 关联关系 组合关系:将一个类的对象封装到另一个类的对象属性中. 聚合关系 boy gril school te ...

  7. 阿里推荐的线程使用方法 ThreadPoolExecutor

    阿里推荐原因:使用线程池可以减少创建和销毁线程上所花的时间以及系统资源的开销,然后之所以不用Executors自定义线程池,用ThreadPoolExecutor是为了规范线程池的使用,还有让其他人更 ...

  8. Spring详解

    https://gitee.com/xiaomosheng888老师的码云 1.核心容器:核心容器提供 Spring 框架的基本功能(Spring Core).核心容器的主要组件是 BeanFacto ...

  9. 假如有Thread1、Thread2、Thread3、Thread4四条线程分别统计C、D、E、F四个盘的大小

    假如有Thread1.Thread2.Thread3.Thread4四条线程分别统计C.D.E.F四个盘的大小,所有线程都统计完毕交给Thread5线程去做汇总,应当如何实现? 实现1:用concur ...

  10. Java之冒泡排序(升序)

    Java之冒泡排序 * 编辑者:鸿灬嗳 * 实现功能: 使用冒泡排序对数组:{25,24,12,76,101,96,28} 排序. */ package test05; public class Bu ...