Wang's blog Wang's blog
首页
  • 前端文章

    • HTML教程
    • CSS
    • JavaScript
  • 前端框架

    • Vue
    • React
    • VuePress
    • Electron
  • 后端技术

    • Npm
    • Node
    • TypeScript
  • 编程规范

    • 规范
  • 我的笔记
  • Git
  • GitHub
  • VSCode
  • Mac工具
  • 数据库
  • Google
  • 服务器
  • Python爬虫
  • 前端教程
更多
收藏
关于
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

Wang Mings

跟随大神,成为大神!
首页
  • 前端文章

    • HTML教程
    • CSS
    • JavaScript
  • 前端框架

    • Vue
    • React
    • VuePress
    • Electron
  • 后端技术

    • Npm
    • Node
    • TypeScript
  • 编程规范

    • 规范
  • 我的笔记
  • Git
  • GitHub
  • VSCode
  • Mac工具
  • 数据库
  • Google
  • 服务器
  • Python爬虫
  • 前端教程
更多
收藏
关于
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • Python爬虫

    • 爬虫的基础知识

    • 请求的发送方法

    • 数据提取方法

    • 高性能爬虫

    • selenium

      • 无头浏览器的介绍
        • 无头浏览器
          • 学习目标
          • 1 什么是selenium
          • 2 PhantomJS的介绍
          • 3 Chromedriver的介绍
          • 4 driver的安装
          • 5 PhantomJS安装示例
          • 5.1 下载PhantomJS:
          • 5.2 解压并创建软连接:
          • 6 chromedriver安装示例
          • 小结
      • selenium的基本使用
      • selenium元素定位的方法
      • selenium的其他方法
      • selenium案例
      • 小结
    • 反爬以及解决方案

    • MONGODB数据库

    • scrapy框架

    • scrapy_redis

    • 爬虫的部署

    • 爬虫框架开发分析

    • 框架雏形实现

    • 框架功能完善

    • 框架功能升级

    • 项目实战

    • pywin32介绍

  • 前端教程

  • 教程
  • Python爬虫
  • selenium
wangmings
2022-07-19
目录

无头浏览器的介绍

# 无头浏览器

# 学习目标
  1. 了解 selenium的作用
  2. 了解 driver的安装过程

我们如果想在python爬虫操作动态的数据,就必须学习selenium自动化测试工具, 而使用selenium的前提是需要无头浏览器(无界面浏览器)

# 1 什么是selenium

Selenium是一个Web的自动化测试工具,最初是为网站自动化测试而开发的,Selenium 可以直接运行在浏览器上,它支持所有主流的浏览器(包括PhantomJS这些无界面的浏览器),可以接收指令,让浏览器自动加载页面,获取需要的数据,甚至页面截屏

# 2 PhantomJS的介绍

PhantomJS 是一个基于Webkit的“无界面”(headless)浏览器,它会把网站加载到内存并执行页面上的 JavaScript

  • 下载地址:http://phantomjs.org/download.html (opens new window)

# 3 Chromedriver的介绍

Chromedriver 也是一个能够被selenium驱动的浏览器,但是和PhantomJS的区别在于它是有界面的

  • 下载地址:https://npm.taobao.org/mirrors/chromedriver (opens new window)

# 4 driver的安装

最简单的安装方式是:解压后把bin目录下的可执行文件移动到环境变量下,比如/usr/bin 或者是/usr/local/bin下面

# 5 PhantomJS安装示例

# 5.1 下载PhantomJS:
wget https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-2.1.1-linux-x86_64.tar.bz2 
1
# 5.2 解压并创建软连接:
tar -xvjf phantomjs-2.1.1-linux-x86_64.tar.bz2 
sudo cp -R phantomjs-2.1.1-linux-x86_64 /usr/local/share/ 
sudo ln -sf /usr/local/share/phantomjs-2.1.1-linux-x86_64/bin/phantomjs /usr/local/bin/ 
1
2
3

# 6 chromedriver安装示例

----- Linux 下安装方式
chromedriver_linux64.zip : 版本 ChromeDriver v2.22 (2016-06-06)
(支持 Chrome v49-52,当前Ubuntu虚拟机下的Chrome版本为50.0)


1. unzip chromedriver_linux64.zip
2. sudo chmod +x chromedriver
3. sudo mv chromedriver /usr/local/bin/


----- MacOS X 下安装方式
chromedriver_mac64.zip : 版本 ChromeDriver v2.32 (2017-08-30)
(支持 Chrome v59-61)

1. 安装 同Linux



----- Windows 下安装方式
chromedriver_win32.zip : 版本 ChromeDriver v2.32 (2017-08-30)
(支持 Chrome v59-61)

1. 解压 chromedriver_win32.zip
2. 将 chromedriver 移动到 Python安装目录下
(其实放哪都可以,但是需要配环境变量,放Python安装目录下省事)


注意:Chromedriver和电脑上的chrome版本有对应关系,建议使用最新的Chromedriver版本并且更新chrome浏览器到最新版 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28

# 小结

  1. 能够安装PhtantomJs和Chromedriver浏览器
  2. 能够知道selenium是自动化测试工具
编辑 (opens new window)
小结
selenium的基本使用

← 小结 selenium的基本使用→

最近更新
01
theme-vdoing-blog博客静态编译问题
09-16
02
搜索引擎
07-19
03
友情链接
07-19
更多文章>
Theme by Vdoing | Copyright © 2019-2022 Evan Xu | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式