美文网首页我爱编程
Selenium+python各种填坑

Selenium+python各种填坑

作者: 谁动了我的果果 | 来源:发表于2017-05-10 18:25 被阅读0次

版本

Python3.5.2 \ Selenium3.4.0 \ FireFox51.0


安装setuptools与pip

  • setuptools是Python的distutilsde工具的增强工具,可以更方便的创建和发布Python包。
  • 在最新的Python安装包中已经集成了pip,所以不需要单独下载安装,没想到到后来程序运行,是一个大坑。
  • 第一个坑:下载setuptools-35.0.2.zip最新版本,通过python命令执行setup.py进行安装:进入到解压后的文件夹cd -python setup.py install 使用此方法会报错,解决使用:pip install setuptools 成功安装。

安装Selenium

  • 前面安装pip是为了更方便的安装Selenium包,通过pip命令可直接安装:pip install Selenium。第二个坑Selenium安装成功,但是在最下面会报一个警告,大致的就是说pip的版本问题。
Paste_Image.png

又重新更新了下pip:python -m pip install --upgrade pip

Paste_Image.png

成功 !!继续~


编写第一个自动化脚本

Paste_Image.png
  • 第三个坑:原以为可以运行了, 没想到蹦出来个错误,大致是说geckodriver需要配置在环境变量中。
Paste_Image.png
  • 得了,别废话,下载吧 geckodriver下载地址
  • 原来Selenium3有了一些比较大的改变,其中之一就是Webdriver从浏览器中分离出来了,所以需要单独安装。
  • 第四个坑:下载的最新版本,紧跟潮流喵~geckodriver-v0.16.0-win64.zip,解压后装在任意文件夹都可以,然后再配置环境变量Path,丫的,又报错,一直在提示 “selenium.common.exceptions.WebDriverException: Message: Unable to find a matching set of capabilities”。在网上查阅资料,大部分说是版本不兼容,火狐版本太高,这各种卸载,各种安装啊,欲哭无泪,还是报同样的错误,最后才知道,geckodriver版本装的高了,应该安装v0.15.0版本。
  • 接着需要将Firefox的可执行程序路径也添加到环境变量中,最后添加完了所有环境变量。
  • 最后重启IDLE,运行脚本,bingo~成功!!!
  • 这段代码做了以下几件事:
    1 导入Selenium Webdriver包,从而使用Webdriver API
    2 获得浏览器对象,赋值给变量driver
    3 通过get()方法,向浏览器发送网址
    4 通过页面元素的定位,定位到百度输入框,并通过键盘输入方法send_keys(),向输入框中输入"Selenium2"
    5 通过id定位百度一下搜索按钮,并发送click()单击事件
    6 退出并关闭浏览器

安装浏览器驱动

  • 各个浏览器驱动下载地址
  • 安装Chrome浏览器驱动,下载ChromeDriver_win32.zip,无论你的操作系统是32位还是64位的,都管用。解压后,将chromedriver.exe放到 C:\Python35\目录下,之前已经将 C:\Python35放到系统环境变量Path下,所以这里不需要再次添加。
  • 安装IE浏览器驱动,下载IEDriverServer_win32_xxx.zip,解压后同样放到C:\Python35\目录下。
  • 安装成功后可以用IE和Chrome来替换Firefox运行上面的例子:
    将driver=webdriver.Firefox()
    替换为:
    driver=webdriver.Chrome()
    或:
    driver=webdriver.Ie()
    程序正常运行。

相关文章

  • Selenium+python各种填坑

    版本 Python3.5.2 \ Selenium3.4.0 \ FireFox51.0 安装setuptool...

  • 各种坑,然后填坑

    1.在学习SDWebImage时,很多人想通过SDWebImage Demo来学习,但是等你编译的时候会出现几个错...

  • 填坑之路:iframe的各种坑

    连着两个项目遇到iframe,难受。 同域还好,不同域简直爆炸。 当然几经折磨,还是有了办法。 解决方案就是让它们...

  • Arcgis10.2.7 for android 地图添加图层文

    最近接手公司先前的项目,各种坑等待我去填呀,当然,填坑的过程也是成长的过程! 不废话,直接说问题,在开发Arcgi...

  • 再挖个坑,明天填,push的

    再挖个坑,明天填,push的 再挖个坑,明天填,push的 再挖个坑,明天填,push的 再挖个坑,明天填,pus...

  • Wendy Shijia 的「 Escher's Gallery

    开始填坑。太多坑没填以致可以从容选择先填哪个,然而也忘了坑长什么样、怎么填。不过还是希望该填的坑能尽量于月底前填完...

  • composer的原理和使用(下)--先占坑

    占坑,后面慢慢填坑

  • 在OhMyZsh下conda找不到

    填坑经历就不说了,各种心酸各种泪,直接解决方案: 安装完Anaconda 在iTerm输入: 在 ~/.zshrc...

  • RAC

    填坑

  • 填坑

    填坑。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。...

网友评论

    本文标题:Selenium+python各种填坑

    本文链接:https://www.haomeiwen.com/subject/rbpgtxtx.html