百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

小白学 Python 爬虫(2):前置准备(一)基本类库的安装

off999 2024-10-24 12:23 28 浏览 0 评论

如果我的文章对您有帮助,请关注支持下作者的公众号:极客挖掘机,您的关注,是对小编坚持原创的最大鼓励:)

人生苦短,我用 Python

前文传送门:

小白学 Python 爬虫(1):开篇

本篇内容较长,各位同学可以先收藏后再看~~

在开始讲爬虫之前,还是先把环境搞搞好,工欲善其事必先利其器嘛~~~

本篇文章主要介绍 Python 爬虫所使用到的请求库和解析库,请求库用来请求目标内容,解析库用来解析请求回来的内容。

开发环境

首先介绍小编本地的开发环境:

  • Python3.7.4
  • win10

差不多就这些,最基础的环境,其他环境需要我们一个一个安装,现在开始。

请求库

虽然 Python 为我们内置了 HTTP 请求库 urllib ,使用姿势并不是很优雅,但是很多第三方的提供的 HTTP 库确实更加的简洁优雅,我们下面开始。

Requests

Requests 类库是一个第三方提供的用于发送 HTTP 同步请求的类库,相比较 Python 自带的 urllib 类库更加的方便和简洁。

Python 为我们提供了包管理工具 pip ,使用 pip 安装将会非常的方便,安装命令如下:

pip install requests

验证:

C:\Users\inwsy>python
Python 3.7.4 (tags/v3.7.4:e09359112e, Jul 8 2019, 20:34:20) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import requests

首先在 CMD 命令行中输入 python ,进入 python 的命令行模式,然后输入 import requests 如果没有任何错误提示,说明我们已经成功安装 Requests 类库。

Selenium

Selenium 现在更多的是用来做自动化测试工具,相关的书籍也不少,同时,我们也可以使用它来做爬虫工具,毕竟是自动化测试么,利用它我们可以让浏览器执行我们想要的动作,比如点击某个按钮、滚动滑轮之类的操作,这对我们模拟真实用户操作是非常方便的。

安装命令如下:

pip install selenium

验证:

C:\Users\inwsy>python
Python 3.7.4 (tags/v3.7.4:e09359112e, Jul 8 2019, 20:34:20) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import selenium

这样没报错我们就安装完成,但是你以为这样就算好了么?图样图森破啊。

ChromeDriver

我们还需要浏览器的支持来配合 selenium 的工作,开发人员嘛,常用的浏览器莫非那么几种:Chrome、Firefox,那位说 IE 的同学,你给我站起来,小心我跳起来打你膝盖,还有说 360 浏览器的,你们可让我省省心吧。

接下来,安装 Chrome 浏览器就不用讲了吧。。。。

再接下来,我们开始安装 ChromeDriver ,安装了 ChromeDriver 后,我们才能通过刚才安装的 selenium 来驱动 Chrome 来完成各种骚操作。

首先,我们需要查看自己的 Chrome 浏览器的版本,在 Chrome 浏览器右上角的三个点钟,点击 帮助 -> 关于,如下图:

将这个版本找个小本本记下来,小编这里的版本为: 版本 78.0.3904.97(正式版本) (64 位)

接下来我们需要去 ChromeDriver 的官网查看当前 Chrome 对应的驱动。

官网地址: https://sites.google.com/a/chromium.org/chromedriver/

因某些原因,访问时需某些手段,访问不了的就看小编为大家准备的版本对应表格吧。。。

ChromeDriver VersionChrome Version78.0.3904.117877.0.3865.407777.0.3865.107776.0.3809.1267676.0.3809.687676.0.3809.257676.0.3809.127675.0.3770.907575.0.3770.87574.0.3729.67473.0.3683.687372.0.3626.69722.4671-732.4570-722.4469-712.4369-712.4268-702.4167-692.4066-682.3966-682.3865-672.3764-662.3663-652.3562-64

顺便小编找到了国内对应的下载的镜像站,由淘宝提供,如下:

http://npm.taobao.org/mirrors/chromedriver

虽然和小编本地的小版本对不上,但是看样子只要大版本符合应该没啥问题,so,去镜像站下载对应的版本即可,小编这里下载的版本是:78.0.3904.70 ,ChromeDriver 78版本的最后一个小版本。

下载完成后,将可执行文件 chromedriver.exe 移动至 Python 安装目录的 Scripts 目录下。如果使用默认安装未修改过安装目录的话目录是:%homepath%\AppData\Local\Programs\Python\Python37\Scripts ,如果有过修改,那就自力更生吧。。。

将 chromedriver.exe 添加后结果如下图:

验证:

还是在 CMD 命令行中,输入以下内容:

C:\Users\inwsy>python
Python 3.7.4 (tags/v3.7.4:e09359112e, Jul 8 2019, 20:34:20) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> from selenium import webdriver
>>> browser = webdriver.Chrome()

如果打开一个空白的 Chrome 页面说明安装成功。

GeckoDriver

上面我们通过安装 Chrome 的驱动完成了 Selenium 与 Chrome 的对接,想要完成 Selenium 与 FireFox 的对接则需要安装另一个驱动 GeckoDriver 。

FireFox 的安装小编这里就不介绍了,大家最好去官网下载安装,路径如下:

FireFox 官网地址: http://www.firefox.com.cn/

GeckoDriver 的下载需要去 Github (全球最大的同性交友网站),下载路径小编已经找好了,可以选择最新的 releases 版本进行下载。

下载地址: https://github.com/mozilla/geckodriver/releases

选择对应自己的环境,小编这里选择 win-64 ,版本为 v0.26.0 进行下载。

具体配置方式和上面一样,将可执行的 .exe 文件放入 %homepath%\AppData\Local\Programs\Python\Python37\Scripts 目录下即可。

验证:

还是在 CMD 命令行中,输入以下内容:

C:\Users\inwsy>python
Python 3.7.4 (tags/v3.7.4:e09359112e, Jul 8 2019, 20:34:20) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> from selenium import webdriver
>>> browser = webdriver.Firefox()

应该是可以正常打开一个空白的 FireFox 页面的,结果如下:

注意: GeckoDriver 指出一点,当前的版本在 win 下使用有已知 bug ,需要安装微软的一个插件才能解决,原文如下:

You must still have the Microsoft Visual Studio redistributable runtime installed on your system for the binary to run. This is a known bug which we weren't able fix for this release.

插件下载地址: https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads

请各位同学选择自己对应的系统版本进行下载安装。

Aiohttp

上面我们介绍了同步的 Http 请求库 Requests ,而 Aiohttp 则是一个提供异步 Http 请求的类库。

那么,问题来了,什么是同步请求?什么是异步请求呢?

  • 同步:阻塞式,简单理解就是当发出一个请求以后,程序会一直等待这个请求响应,直到响应以后,才继续做下一步。
  • 异步:非阻塞式,还是上面的例子,当发出一个请求以后,程序并不会阻塞在这里,等待请求响应,而是可以去做其他事情。

从资源消耗和效率上来说,同步请求是肯定比不过异步请求的,这也是为什么异步请求会比同步请求拥有更大的吞吐量。在抓取数据时使用异步请求,可以大大提升抓取的效率。

如果还想了解跟多有关 aiohttp 的内容,可以访问官方文档: https://aiohttp.readthedocs.io/en/stable/ 。

aiohttp 安装如下:

pip install aiohttp

aiohttp 还推荐我们安装另外两个库,一个是字符编码检测库 cchardet ,另一个是加速DNS的解析库 aiodns 。

安装 cchardet 库:

pip install cchardet

安装 aiodns 库:

pip install aiodns

aiohttp 十分贴心的为我们准备了整合的安装命令,无需一个一个键入命令,如下:

pip install aiohttp[speedups]

验证:

C:\Users\inwsy>python
Python 3.7.4 (tags/v3.7.4:e09359112e, Jul 8 2019, 20:34:20) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import aiohttp

没报错就安装成功。

解析库

lxml

lxml 是 Python 的一个解析库,支持 HTML 和 XML 的解析,支持 XPath 的解析方式,而且解析效率非常高。

什么是 XPath ?

XPath即为XML路径语言(XML Path Language),它是一种用来确定XML文档中某部分位置的语言。 XPath基于XML的树状结构,提供在数据结构树中找寻节点的能力。起初XPath的提出的初衷是将其作为一个通用的、介于XPointer与XSL间的语法模型。

以上内容来源《百度百科》

好吧,小编说人话,就是可以从 XML 文档或者 HTML 文档中快速的定位到所需要的位置的路径语言。

还没看懂?emmmmmmmmmmm,我们可以使用 XPath 快速的取出 XML 或者 HTML 文档中想要的值。用法的话我们放到后面再聊。

安装 lxml 库:

pip install lxml

验证:

C:\Users\inwsy>python
Python 3.7.4 (tags/v3.7.4:e09359112e, Jul 8 2019, 20:34:20) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import lxml

没报错就安装成功。

Beautiful Soup

Beautiful Soup 同样也是一个 Python 的 HTML 或 XML 的解析库 。它拥有强大的解析能力,我们可以使用它更方便的从 HTML 文档中提取数据。

首先,放一下 Beautiful Soup 的官方网址,有各种问题都可以在官网查看文档,各位同学养成一个好习惯,有问题找官方文档,虽然是英文的,使用 Chrome 自带的翻译功能还是勉强能看的。

官方网站:https://www.crummy.com/software/BeautifulSoup/

安装方式依然使用 pip 进行安装:

pip install beautifulsoup4

Beautiful Soup 的 HTML 和 XML 解析器是依赖于 lxml 库的,所以在此之前请确保已经成功安装好了 lxml 库 。

验证:

C:\Users\inwsy>python
Python 3.7.4 (tags/v3.7.4:e09359112e, Jul 8 2019, 20:34:20) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> from bs4 import BeautifulSoup

没报错就安装成功。

pyquery

pyquery 同样也是一个网页解析库,只不过和前面两个有区别的是它提供了类似 jQuery 的语法来解析 HTML 文档,前端有经验的同学应该会非常喜欢这款解析库。

首先还是放一下 pyquery 的官方文档地址。

官方文档: https://pyquery.readthedocs.io/en/latest/

安装:

pip install pyquery

验证:

C:\Users\inwsy>python
Python 3.7.4 (tags/v3.7.4:e09359112e, Jul 8 2019, 20:34:20) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import pyquery

没报错就安装成功。

本篇的内容就先到这里结束了。请各位同学在自己的电脑上将上面介绍的内容都安装一遍,以便后续学习使用。

相关推荐

英特尔显卡性能排行(英特尔显卡性能排行天梯图)

IRIS(英特尔第四/五代集成显卡)英特尔第四代集成显卡,分为HD4200/4400/4600,HD5100/5200。代号为GT2/3/3e,中文名为锐炬。hd420044004600和台式...

电脑做系统u盘启动选项(做系统开机u盘怎么选择)

操作须知:1、设置U盘启动分很多种:传统legacy机型设置、uefi新机型设置、uefi机型改legacy启动设置2、由于电脑品牌以及机型非常多,这边仅列举一部分电脑的设置方法,3、如果是uefi机...

未安装nvidia控制面板(电脑未安装nvidia控制面板)

如果你使用的是Nvidia显卡,但未安装Nvidia控制面板,则可能会遇到以下问题:1.无法进行高级显卡设置:Nvidia控制面板提供了高级显卡设置选项,例如显卡超频、显示器分辨率和刷新率、视频调整...

u盘检测不到怎么修复(u盘检查不了是什么原因)

以下是可能的解决办法:1.更换不同的USB端口。有时候电脑某个USB端口可能出现问题,试试换一个不同的端口。2.重启电脑。有时候出现问题的USB端口可能需要重启才能正常。3.插拔几次U盘。有时候...

win7 共享设置(win7共享设置详细步骤)

1.进入控制面板家庭组页打开控制面板找到网络和Internet下面的家庭组和共享选项并打开?2.进入更改高级共享设置打开以后选择更改高级共享设置功能进入?3.开启文件和打印机共享开启文件和打印机共享,...

电脑硬盘怎么装步骤图(电脑硬盘怎么装步骤图片)

1、查看硬盘的各项信息。硬盘的背面会有硬盘的存储容量以及电压,功率,转速等基本信息。2、购买到的一整块硬盘里面包括硬盘、对接线跟螺丝钉。将对接线和螺丝钉摆在一旁。3、在硬盘的上方会有两个SATA接口,...

小马win10永久激活(小马win10永久激活工具使用方法)

很简单,重装系统win7,这个可以激活的,然后根据推送升级win10,如果有强迫症可以升级以后重新安装win10系统,以后都是自动联网激活的。安全。小马激活工具win10版是小马专门为windowns...

win10开机欢迎时间太长(开机欢迎界面时间长)

win10第一个就是你系统里的垃圾太多,如果系统垃圾太多,直接清理垃圾就可以解决这个问题,第二个就是你的开机启动项过多,如果开机启动项过多,直接关闭不必要的开机启动项就可以缩短开机时间,就可以解决你...

登录126邮箱入口(登录126邮箱入口官网)

126邮箱是网易的一个免费邮箱登录入口在浏览器输入:mail.126.com浏览器进入126邮箱网站之后,即可自行登录126邮箱账号。如何在手机上登录126邮箱1、打开手机,找到并打开网易邮箱软件。2...

如何让防火墙允许某个软件(如何允许防火墙阻止访问)

1.打开电脑的开始菜单,找到控制面板选项,并点击打开。2.在打开的控制面板中,找到防火墙选项,并点击打开。3.在打开的防火墙界面中,单击左侧的允许程序通过防火墙选项。4.在跳转的界面中,选择允许通过防...

智慧工厂管理系统(智慧工厂管理系统哪家好)
智慧工厂管理系统(智慧工厂管理系统哪家好)

智慧工厂智能化系统整体的解决方案分为三个主要部分,分别是现场控制系统(FDC)、生产数据管理系统(PDM)以及工厂数字化协同平台(LCT)。其中,现场控制系统(FDC)是智慧工厂系统非常重要的核心组成部分,它是一个支持大规模互联的集群控制系...

2025-11-13 22:03 off999

笔记本无法连接此网络(笔记本无法连接网络wifi)
  • 笔记本无法连接此网络(笔记本无法连接网络wifi)
  • 笔记本无法连接此网络(笔记本无法连接网络wifi)
  • 笔记本无法连接此网络(笔记本无法连接网络wifi)
  • 笔记本无法连接此网络(笔记本无法连接网络wifi)
电脑如何打开隐藏文件(电脑怎么打开隐藏文件夹)

要显示隐藏文件,首先需要打开文件资源管理器,然后点击菜单栏中的“查看”选项,选中“隐藏项目”复选框即可。此时,隐藏文件和文件夹将会显示在文件资源管理器中,可以进行正常操作。如果需要隐藏文件和文件夹,可...

华硕官网客服电话(华硕官网400客服电话)

华硕维修中心官网,http://www.asus.com.cn/support/你可以通过电话,邮件等方式联系华硕的售后客户,提供你的主板序列号,他会告诉你的。华硕ROG真享服务包是一项专门针对购买华...

win11如何进入安全模式(win11如何进入安全模式启动)

进入Win11安全模式有多种方法,下面介绍两种常用的方法:方法一:使用系统配置工具1.使用组合键Win+R打开“运行”对话框,输入“msconfig”并按Enter键。2.在“系统配...

取消回复欢迎 发表评论: