• Python爬虫——Selenium 简介和下载


    Python爬虫——Selenium 简介和下载

    1、Selenium 简介

    Selenium 是一个用于测试 Web 应用程序的自动化测试工具,最初是为网站自动化测试而开发的。它支持多种平台:Windows、Linux、Mac,支持多种语言:Python、Perl、PHP、C# 等。

    Selenium 实现了很多自动化功能,比如检测软件与浏览器兼容性,软件自动化测试,生成不同语言的测试脚本,自动录制、以及自动化爬虫等。

    Selenium 直接运行在浏览器中,就像真正的用户在操作一样。利用它可以完成对浏览器的自动化操作,如跳转、输入、点击、下拉,同时还可以获取浏览器当前呈现的页面的源代码,做到可见即可爬。对于一些JavaScript动态渲染的页面来说,用Selenium可以拿到网页渲染之后的结果。

    Selenium 自己不带浏览器,不支持浏览器的功能,它需要与第三方浏览器结合在一起才能使用。它支持所有主流的浏览器(包括PhantomJS这种无界面的浏览器),包括 IE(7, 8, 9, 10, 11),Mozilla Firefox,Safari,Google Chrome,Opera 等。但是大多数时候需要让它内嵌在代码中运行,所以我们可以用一个叫PhantomJS的工具代替真实的浏览器。

    Selenium可以根据我们的指令,让浏览器自动加载页面,获取需要的数据,甚至页面截屏,或者判断网站上某些动作是否发生。

    Selenium 官方文档

    Selenium 中文文档

    python selenium

    ​ 图1:Python Selenium

    2、Selenium 下载安装

    可以从 PyPI 官方库中下载 Selenium库https://pypi.python.org/simple/selenium ,更好的方法是用 pip用命令安装:pip install selenium

    Selenium 安装

    安装命令:

    pip install selenium
    
    • 1

    BautifulSoup 安装位置:Python安装目录的Scripts文件夹下

    安装浏览器驱动程序

    不同的浏览器需要使用不同驱动程序,主要浏览器 WebDriver 驱动下载地址如下:

    • 谷歌浏览器 chromedrive:http://chromedriver.storage.googleapis.com/index.html
    • 火狐浏览器 geckodriver:https://github.com/mozilla/geckodriver/releases
    • IE 浏览器 IEDriver:http://selenium-release.storage.googleapis.com/index.html

    安装 Chrome、Firefox 驱动时,下载的驱动程序版本要和浏览器版本相匹配,否则不能驱动浏览器。安装 IE 驱动时需要下载的驱动程序版本要和 Selenium 版本相匹配。

    以 Windows10 平台安装 chromedrive 为例:

    1、检查Chrome 浏览器版本号,下载相应驱动文件,然后解压文件,得到 Chromedriver.exe 文件

    在这里插入图片描述

    在这里插入图片描述

    2、将 Chromedriver.exe 文件拷贝到 Python 安装目录的 Scripts 目录下,然后将路径添加到系统环境变量中

    3、启动驱动程序:输入 chromedrive 命令

    在这里插入图片描述

    启动成功后,驱动程序会在后台运行。

    3、Selenium 简单使用

    自动访问网站

    代码实例:

    # 导入selenium模块
    from selenium import webdriver
    
    # 创建Chrome浏览器对象
    browser = webdriver.Chrome()
    
    # 使用浏览器访问网站
    url = "https://www.bilibili.com"
    browser.get(url)
    
    # 获取网页源码
    content = browser.page_source
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    运行结果:证明安装的谷歌浏览器驱动在正常运行

    在这里插入图片描述

  • 相关阅读:
    Vertica 向 GBase8a 迁移指南之VARBINARY/BYTEA/RAW 数据类型
    大唐“痴情”男女-白居易-湘灵
    leetcode 33. 搜索旋转排序数组
    matlab 计算数组中所有值的均值
    Github爆火,阿里内部疯传的中间件核心原理与实践笔记终于开源
    LeetCode简单题之赢得比赛需要的最少训练时长
    JavaScript中Bom节点和表单的获取值
    Numpy解决找出二维随机矩阵中每行数据中最接近某个数字的数字
    Mybatis入门实战
    【1422. 分割字符串的最大得分】
  • 原文地址:https://blog.csdn.net/wpc2018/article/details/126271489