我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Python3网络爬虫实战-1、请求库安

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Python3网络爬虫实战-1、请求库安

爬虫可以简单分为几步:抓取页面、分析页面、存储数据。

在第一步抓取页面的过程中,我们就需要模拟浏览器向服务器发出请求,所以需要用到一些 Python 库来实现 HTTP 请求操作,在本书中我们用到的第三方库有 Requests、Selenium、Aiotttp 等。

在本节我们介绍一下这些请求库的安装方法。

由于 Requests 属于第三方库,也就是 Python 默认不会自带这个库,需要我们手动去安装,下面我们首先看一下它的安装过程。

1. 相关链接

2. 安装

pip3 install requests

3. 验证安装

为了验证库是否已经安装成功,可以在命令行下测试一下:

$ python3
>>> import requests
Python资源分享qun 784758214 ,内有安装包,PDF,学习视频,这里是Python学习者的聚集地,零基础,进阶,都欢迎

在命令行首先输入 python3,进入命令行模式,然后输入如上内容,如果什么错误提示也没有,那么就证明我们已经成功安装了 Requests。

Selenium 是一个自动化测试工具,利用它我们可以驱动浏览器执行特定的动作,如点击、下拉等等操作,对于一些 JavaScript 渲染的页面来说,此种抓取方式非常有效,下面我们来看下 Selenium 的安装过程。

1. 相关链接

2. 安装

pip3 install selenium

3. 验证安装

进入 Python 命令行交互模式,导入一下 Selenium 包,如果没有报错,则证明安装成功。

$ python3
>>> import selenium

但这样还不够,我们还需要浏览器如 Chrome、Firefox 等浏览器来配合 Selenium 工作。

下面我们会介绍 Chrome、Firefox、PhantomJS 三种浏览器的配置方式,有了浏览器我们才可以配合 Selenium 进行页面的抓取。

在上节我们成功安装好了 Selenium 库,但是它是一个自动化测试工具,需要浏览器来配合它使用,那么本节我们就介绍一下 Chrome 浏览器及 ChromeDriver 驱动的配置。
首先需要下载一个 Chrome 浏览器,方法多样,在此不再赘述。
随后我们需要安装一个 ChromeDriver 才能驱动 Chrome 浏览器完成相应的操作,下面我们来介绍下怎样安装 ChromeDriver。

1. 相关链接

2. MAC安装

brew install chromedriver

如果安装失败,使用下面方法

brew cask install chromedriver

3. 验证安装

配置完成之后,就可以在命令行下直接执行 chromedriver 命令了。
命令行下输入:
chromedriver
输入控制台有类似输出,如图 1-17 所示:
Python3网络爬虫实战-1、请求库安装:Requests、Selenium、ChromeDriv

图 1-17 控制台输出
如果有类似输出则证明 ChromeDriver 的环境变量配置好了。
随后再在程序中测试,执行如下 Python 代码:

from selenium import webdriver
browser = webdriver.Chrome()
Python资源分享qun 784758214 ,内有安装包,PDF,学习视频,这里是Python学习者的聚集地,零基础,进阶,都欢迎

运行之后会弹出一个空白的 Chrome 浏览器,证明所有的配置都没有问题,如果没有弹出,请检查之前的每一步的配置。
如果弹出之后闪退,则可能是 ChromeDriver 版本和 Chrome 版本不简容,请更换 ChromeDriver 版本。
如果没有问题,接下来我们就可以利用 Chrome 来做网页抓取了。

4. 结语

既然 Chrome 可以通过 Selenium 驱动,Firefox 也可以,如果想要实现 Selenium 驱动 Firefox 浏览器可以参考下面的 GeckoDriver 的安装。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Python3网络爬虫实战-1、请求库安

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Python3网络爬虫实战-1、请求库安

爬虫可以简单分为几步:抓取页面、分析页面、存储数据。在第一步抓取页面的过程中,我们就需要模拟浏览器向服务器发出请求,所以需要用到一些 Python 库来实现 HTTP 请求操作,在本书中我们用到的第三方库有 Requests、Seleniu
2023-01-31

Python3网络爬虫实战-2、请求库安

在上一节我们了解了 ChromeDriver 的配置方法,配置完成之后我们便可以用 Selenium 来驱动 Chrome 浏览器来做相应网页的抓取。那么对于 Firefox 来说,也可以使用同样的方式完成 Selenium 的对接,这时需
2023-01-31

Python3网络爬虫实战-5、Web库

Web 想必我们都不陌生,我们现在日常访问的网站都是 Web 服务程序搭建而成的,Python 同样不例外也有一些这样的 Web 服务程序,比如 Flask、Django 等,我们可以拿它来开发网站,开发接口等等。在本书中,我们主要要用到这
2023-01-31

Python3网络爬虫实战-17、爬虫基

爬虫,即网络爬虫,我们可以把互联网就比作一张大网,而爬虫便是在网上爬行的蜘蛛,我们可以把网的节点比做一个个网页,爬虫爬到这就相当于访问了该页面获取了其信息,节点间的连线可以比做网页与网页之间的链接关系,这样蜘蛛通过一个节点后可以顺着节点连线
2023-01-31

Python3网络爬虫实战-15、爬虫基

在写爬虫之前,还是需要了解一些爬虫的基础知识,如 HTTP 原理、网页的基础知识、爬虫的基本原理、Cookies 基本原理等。那么本章内容就对一些在做爬虫之前所需要的基础知识做一些简单的总结。在本节我们会详细了解 HTTP 的基本原理,了解
2023-01-31

Python3网络爬虫实战-10、爬虫框

我们直接用 Requests、Selenium 等库写爬虫,如果爬取量不是太大,速度要求不高,是完全可以满足需求的。但是写多了会发现其内部许多代码和组件是可以复用的,如果我们把这些组件抽离出来,将各个功能模块化,就慢慢会形成一个框架雏形,久
2023-01-31

Python3网络爬虫实战-11、爬虫框

ScrapySplash 是一个 Scrapy 中支持 JavaScript 渲染的工具,本节来介绍一下它的安装方式。ScrapySplash 的安装分为两部分,一个是是 Splash 服务的安装,安装方式是通过 Docker,安装之后会启
2023-01-31

Python3网络爬虫实战-28、解析库

上一节我们实现了一个最基本的爬虫,但提取页面信息时我们使用的是正则表达式,用过之后我们会发现构造一个正则表达式还是比较的繁琐的,而且万一有一点地方写错了就可能会导致匹配失败,所以使用正则来提取页面信息多多少少还是有些不方便的。对于网页的节点
2023-01-31

Python3网络爬虫实战-9、APP爬

Appium 是移动端的自动化测试工具,类似于前面所说的 Selenium,利用它我们可以驱动 Android、iOS 等设备完成自动化测试,比如模拟点击、滑动、输入等操作,其官方网站为:http://appium.io/,本节来了解一下
2023-01-31

Python3网络爬虫实战-29、解析库

前面我们介绍了正则表达式的相关用法,但是一旦正则写的有问题,可能得到的就不是我们想要的结果了,而且对于一个网页来说,都有一定的特殊的结构和层级关系,而且很多节点都有id或class来对作区分,所以我们借助于它们的结构和属性来提取不也是可以的
2023-01-31

Python3网络爬虫实战-8、APP爬

MitmProxy 是一个支持 HTTP 和 HTTPS 的抓包程序,类似 Fiddler、Charles 的功能,只不过它是一个控制台的形式操作。同时 MitmProxy 还有两个关联组件,一个是 MitmDump,它是 MitmProx
2023-01-31

Python3网络爬虫实战-6、APP爬

除了 Web 网页,爬虫也可以对 APP 的数据进行抓取,APP 中的页面要加载出来,首先需要获取数据,那么这些数据一般是通过请求服务器的接口来获取的,由于 APP 端没有像浏览器一样的开发者工具直接比较直观地看到后台的请求,所以对 APP
2023-01-31

Python3网络爬虫实战-7、APP爬

MitmProxy 是一个支持 HTTP 和 HTTPS 的抓包程序,类似 Fiddler、Charles 的功能,只不过它是一个控制台的形式操作。同时 MitmProxy 还有两个关联组件,一个是 MitmDump,它是 MitmProx
2023-01-31

Python3网络爬虫实战-27、Req

本节我们利用 Requests 和正则表达式来抓取猫眼电影 TOP100 的相关内容,Requests 相较于 Urllib 使用更加方便,而目前我们还没有系统学习 HTML 解析库,所以可能对 HTML 的解析库不是很了解,所以本节我们选
2023-01-31

Python3网络爬虫实战-25、req

在前面一节我们了解了 Requests 的基本用法,如基本的 GET、POST 请求以及 Response 对象的用法,本节我们再来了解下 Requests 的一些高级用法,如文件上传,代理设置,Cookies 设置等等。我们知道 Reqe
2023-01-31

Python3网络爬虫实战-16、Web

我们平时用浏览器访问网站的时候,一个个站点形形×××,页面也各不相同,但有没有想过它是为何才能呈现出这个样子的?那么本节我们就来了解一下网页的基本组成、结构、节点等内容。网页可以分为三大部分,HTML、CSS、JavaScript,我们把网
2023-01-31

Python3网络爬虫实战-24、req

在前面一节我们了解了 Urllib 的基本用法,但是其中确实有不方便的地方。比如处理网页验证、处理 Cookies 等等,需要写 Opener、Handler 来进行处理。为了更加方便地实现这些操作,在这里就有了更为强大的库 Request
2023-01-31

Python3网络爬虫实战-18、Ses

在浏览网站的过程中我们经常会遇到需要登录的情况,有些页面只有登录之后我们才可以访问,而且登录之后可以连续访问很多次网站,但是有时候过一段时间就会需要重新登录。还有一些网站有时在我们打开浏览器的时候就自动登录了,而且很长的时间都不会失效,这种
2023-01-31

Python3网络爬虫实战-4、存储库的

在前面一节我们介绍了几个数据库的安装方式,但这仅仅是用来存储数据的数据库,它们提供了存储服务,但如果想要和 Python 交互的话也同样需要安装一些 Python 存储库,如 MySQL 需要安装 PyMySQL,MongoDB 需要安装
2023-01-31

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录