zoukankan      html  css  js  c++  java
  • Python实现网页自动化-初步使用(一)

    自动化介绍及环境要求


    一、了解selenium


    Selenium是一个用于网站应用程序自动化的工具。它可以直接运行在浏览器中,就像真正的用户在操作一样;

    它支持的浏览器包括IE、Mozilla Firefox、Safari、Google Chrome和Opera等,同时支持多种编程语言,如.Net、Java、Python和Ruby等。


    Jason Huggins在2004年发起了Selenium项目,这个项目主要是为了不想让自己的时间浪费在无聊的重复性工作中,

    因当时测试的浏览器都支持JavaScript,Jason和他所在的团队就采用JavaScript编写了一种测试工具——JavaScript类库,来验证浏览器页面的行为;

    这个JavaScript类库就是Selenium core,同时也是seleniumRC、Selenium IDE的核心组件,Selenium由此诞生。


    从Selenium诞生至今一共发展了3个版本:Selenium 1.0、Selenium 2.0和Selenium 3.0。每个版本的更新都有一些变化,下面大概了解一下各个版本的信息:


    ● Selenium 1.0:主要由Selenium IDE、Selenium Grid和Selenium RC组成。Selenium IDE是嵌入到浏览器的一个插件,由于实现简单的浏览器操作的录制与回放功能;

    Selenium Grid是一种自动化的辅助工具,通过利用现有的计算机基础设施,能加快网站自动化操作;Selenium RC是Selenium家族的核心部分,支持多种不同开发语言编写的自动化脚本,

    通过Selenium RC的服务器作为代理服务器去访问网站应用,从而达到自动化目的。


    ● Selenium 2.0:该版本在1.0版本的基础上结合了Webdriver。Selenium通过Webdriver直接操控网站应用,解决了Selenium 1.0存在的缺点;

    WebDriver针对各个浏览器而开发,取代了网站应用的JavaScript。目前大部分自动化技术都是以Selenium 2.0为主,这也是本书主要讲述的内容。


    ● Selenium 3.0:这个版本做了不大不小的更新。如果是使用Java开发只能在Java 8以上的开发环境,如果以IE浏览器作为自动化浏览器,浏览器必须在IE 9版本或以上。


    从Selenium的各个版本信息可以了解到,它必须在浏览器的基础上才能实现自动化。目前浏览器的种类繁多,比如搜狗浏览器、QQ浏览器和百度浏览器等;

    这些浏览器大多数是在IE内核、Webkit内核或Gecko内核的基础上开发而成的。为了统一浏览器的使用,Selenium主要支持IE、Mozilla Firefox、Safari、Google Chrome和Opera等主流浏览器。


    Selenium发展至今,不仅在自动化测试和自动化流程开发的领域上占据着重要的位置,而且在网络爬虫上也被广泛使用。

    二、环境要求

    1.Python

    2.selenium库

    3.谷歌浏览器

    准备过程


    1.安装selenium库:

    pip install selenium

    2.安装谷歌浏览器webdriver

    首先打开谷歌浏览器的“关于谷歌浏览器”,查看谷歌浏览器的版本:


    版本:81.0.4044.138


    然后根据版本号去:http://npm.taobao.org/mirrors/chromedriver/


    下载对应版本的zip文件:

    根据实际系统版本选择:


    然后进行解压,安装。


    (注:放到常用的文件夹即可,下面会用到。)


    实现效果


    完成安装后,创建一个test.py的Python文件,看看能否自动启动谷歌浏览器。

    from selenium import webdriver
    
    #设置自动化打开的浏览器访问网址
    url = 'https://www.chenxiaohei.net'
    
    #设置谷歌浏览器driver的目录所在
    path = '/Users/chengf/Documents/Python/Project/selenium_chrome/chromedriver'
    
    browser = webdriver.Chrome(executable_path=path)
    
    #打开浏览器,并访问设置的网址。
    browser.get(url)

    (效果如图)


    看到谷歌浏览器的提示:

    chorme正在受到自动测试软件的控制

    说明测试成功。

  • 相关阅读:
    02-35 scikit-learn库之支持向量机
    C#当中的out关键字(借鉴于CSDN)
    Uploadify上传大文件
    EF-基础用法
    第一节:EasyUI样式,行内编辑,基础知识
    Compute和Linq的Field使用
    leetcode-15. 三数之和-OK
    C#启动时全屏显示窗体...
    C#启动时全屏显示窗体...
    leetcode-1117. H2O 生成
  • 原文地址:https://www.cnblogs.com/chen1999/p/12906921.html
Copyright © 2011-2022 走看看