Python Selenium 基本配置

  不知道你们学习python的目的有哪些?Web开发  自动化运维  大数据分析  网络爬虫  人工智能  机器学习  ?html

  最近对网络爬虫比较感兴趣,为何呢?懒人分不少种.....python

    1. 懒惰成性什么都不干的web

    2.  趁人不注意就偷懒打盹的chrome

    3. 被逼无奈想着投机取巧完成任务的编程

    很不幸,学爬虫的初衷确是为了第三种,由于工做上有一些问题须要处理,可是让我一个个的动手完成真的比较无聊,因此想到了爬虫。就如博客园说的,代码改变世界。固然爬虫也分不少类型,我说的主要是经过自动化selenium模拟手动操做,完成重复有重复的工做喽。windows

  selenium做为目前市面上比较火的WEBGUI自动化测试。selenium 2针对各个浏览器而开发的,它取代了嵌入到被测Web应用中的 JavaScript。与浏览器的紧密集成,支持建立更高级的测试,避免了JavaScript安全模型的限制。除了来自浏览器厂商的支持,Selenium 2 还利用操做系统级的调用模拟用户输入。WebDriver 支持api

  • Firefox (FirefoxDriver)浏览器

  • IE(InternetExplorerDriver)安全

  • Opera(OperaDriver)网络

  • Chrome (ChromeDriver)

  • 以及safari(SafariDriver)

它还支持Android(Selendroid)和iPhone(Appium)的移动应用测试。此外,Selenium 2还包括基于HtmlUnit的无界面实现,称为HtmlUnitDriver,和基于webkit的无界面浏览器phantomjs。Selenium 2 API能够经过

  • Java

  • C#

  • PHP

  • Python

  • Perl

  • Ruby

等编程语言访问,支持开发人员使用他们经常使用的编程语言来建立测试。好了,既然python涵盖在其中,那就简单看看吧,艺多不压身啊。。。。

  谈及selenium就要推荐两个网站了,由于selenium在使用的时候须要下载浏览器对应的webdriver才行。我我的比较喜欢谷歌浏览器,因此第一个网站就是chromedriver插件的下载网址了。

        1. 谷歌浏览器启动下载地址:       http://chromedriver.storage.googleapis.com/index.html

  须要注意的地方,你的浏览器须要和对应版本的chromedriver配合,才能使用哦。  

附chromedriver与chrome的对应关系表:

chromedriver版本 支持的Chrome版本
v2.35 v62-64
v2.34 v61-63
v2.33 v60-62
v2.32 v59-61
v2.31 v58-60
v2.30 v58-60
v2.29 v56-58
v2.28 v55-57
v2.27 v54-56
v2.26 v53-55
v2.25 v53-55
v2.24 v52-54
v2.23 v51-53
v2.22 v49-52
v2.21 v46-50
v2.20 v43-48
v2.19 v43-47
v2.18 v43-46
v2.17 v42-43
v2.13 v42-45
v2.15 v40-43
v2.14 v39-42
v2.13 v38-41
v2.12 v36-40
v2.11 v36-40
v2.10 v33-36
v2.9 v31-34
v2.8 v30-33
v2.7 v30-33
v2.6 v29-32
v2.5 v29-32
v2.4 v29-32

 

  个人chrome版本是63的因此直接下载2.3.5就OK。下载好大家的chromedriver.exe 放在指定目录下   如: pythonpath/scripts  若是电脑环境变量中的path不包含你放置的目录,记得要添加进去哦。

 

 

   2. webdriver中文社区 :      http://www.webdriver.org/nav1/             上面有不少selenium的相关知识,棒棒哒......

 

来一段简单的selenium操做吧:

 1 from selenium import webdriver
 2 
 3 firsttest = webdriver.Chrome()  # 声明驱动对象
 4 
 5 
 6 def first_test(url):
 7     try:
 8         firsttest.get(url)  # 发送get请求
 9         allurl = firsttest.find_elements_by_tag_name('a')  # 找到目标
10         for article in allurl:
11             if article.text == 'Python 修改pip源---windows / Linux':
12                 print(article.get_attribute('href'))
13                 firsttest.get(article.get_attribute('href'))
14                 break
15     except Exception as ErrorInfo:
16         print(ErrorInfo)
17     finally:
18         firsttest.close()  # 关闭谷歌浏览器
19 
20 
21 if __name__ == '__main__':
22     url = 'http://www.cnblogs.com/Dracular/'
23     first_test(url)
相关文章
相关标签/搜索