Python 爬虫环境搭建:一篇文章搞定所有依赖库(Requests/Lxml/BeautifulSoup)
在 Python 爬虫开发中,环境搭建是第一步,也是关键一步。 Requests 用于发送 HTTP 请求,Lxml 和 BeautifulSoup 则用于解析网页数据,掌握这三个依赖库的安装与配置,能为后续爬虫开发打下坚实基础。本文将从 Python 安装开始,一步步教你完成所有依赖库的搭建,无论你使用 Windows、macOS 还是 Linux 系统,都能轻松上手。
一、Python 基础环境安装
Python 是爬虫开发的基础,首先需要确保你的电脑上安装了合适版本的 Python。建议选择 Python 3.x 版本,因为 Python 2.x 已经停止更新维护,很多新的库和功能都不再支持 Python 2.x。
(一)Windows 系统
- 进入 Python 官方网站,在首页点击 “Downloads”,选择对应的 Windows 版本(32 位或 64 位,根据你的电脑系统选择)。
- 下载完成后,双击安装文件。在安装界面,一定要勾选 “Add Python 3.x to PATH” 选项,这样可以将 Python 添加到系统环境变量中,方便后续在命令行中直接使用 Python 命令。
- 点击 “Install Now” 进行默认安装,或者选择 “Customize Installation” 进行自定义安装(比如选择安装路径)。
- 安装完成后,验证 Python 是否安装成功。按下 “Win+R” 组合键,打开 “运行” 窗口,输入 “cmd”,点击 “确定” 打开命令提示符。在命令提示符中输入 “python --version”(或者 “python -V”),如果显示 Python 的版本信息(如 Python 3.10.1),则说明 Python 安装成功。
(二)macOS 系统
- 同样进入 Python 官方网站,下载对应 macOS 版本的 Python 安装文件(通常是.dmg 格式)。
- 双击下载的.dmg 文件,然后双击其中的.pkg 文件开始安装。按照安装向导的提示进行操作,一般默认安装即可。
- 安装完成后,打开 “终端”(可以通过 Spotlight 搜索 “Terminal” 找到)。在终端中输入 “python3 --version”,如果显示 Python 的版本信息,则说明安装成功。(注意:macOS 系统自带 Python 2.x 版本,所以使用 “python3” 命令来区分 Python 3.x 版本)
(三)Linux 系统
大多数 Linux 系统(如 Ubuntu、CentOS 等)自带 Python,但可能是 Python 2.x 版本,需要安装 Python 3.x 版本。
- Ubuntu 系统:
打开终端,输入以下命令更新软件包列表:
sudo apt update
然后输入以下命令安装 Python 3:
sudo apt install python3
安装完成后,输入 “python3 --version” 验证是否安装成功。
2.CentOS 系统:
打开终端,输入以下命令安装 Python 3:
sudo yum install python3
安装完成后,同样输入 “python3 --version” 验证安装结果。
二、pip 包管理工具配置
pip 是 Python 的包管理工具,用于安装和管理 Python 依赖库。在安装 Python 3.x 版本时,通常会自动安装 pip。我们需要先验证 pip 是否安装成功,并将其升级到最新版本。
(一)验证 pip 安装
- Windows 系统:
在命令提示符中输入 “pip --version”(或者 “pip3 --version”),如果显示 pip 的版本信息(如 pip 21.2.4 from c:\python310\lib\site-packages\pip (python 3.10)),则说明 pip 安装成功。
2.macOS 和 Linux 系统:
在终端中输入 “pip3 --version”,如果显示 pip 的版本信息,则说明安装成功。
(二)升级 pip
为了确保 pip 能正常安装各种依赖库,建议将 pip 升级到最新版本。
- Windows 系统:
在命令提示符中输入以下命令:
python -m pip install --upgrade pip
2.macOS 和 Linux 系统:
在终端中输入以下命令:
python3 -m pip install --upgrade pip
执行命令后,pip 会自动升级到最新版本。升级完成后,可以再次输入 “pip --version”(Windows)或 “pip3 --version”(macOS、Linux)验证升级结果。
三、Requests 库安装与验证
Requests 是 Python 中一个非常流行的 HTTP 请求库,它简洁易用,支持 HTTP/HTTPS 请求、会话保持、文件上传等功能,是爬虫开发中发送请求的首选工具。
(一)安装 Requests 库
- Windows 系统:
在命令提示符中输入以下命令:
pip install requests
2.macOS 和 Linux 系统:
在终端中输入以下命令:
pip3 install requests
执行命令后,pip 会自动从 Python 官方的 PyPI 仓库(https://pypi.org/)下载 Requests 库并安装。安装过程中,命令行会显示安装进度和相关信息,当显示 “Successfully installed requests-x.x.x”(x.x.x 为具体版本号)时,说明安装成功。
(二)验证 Requests 库
安装完成后,需要验证 Requests 库是否能正常使用。
- Windows 系统:
在命令提示符中输入 “python” 进入 Python 交互环境。然后输入 “import requests”,如果没有报错,说明 Requests 库导入成功。接着可以简单测试一下,比如发送一个 GET 请求:
response = requests.get("https://www.baidu.com")
print(response.status_code) # 输出响应状态码,200表示请求成功
如果输出 “200”,则说明 Requests 库能正常使用。
2.macOS 和 Linux 系统:
在终端中输入 “python3” 进入 Python 交互环境,后续操作和 Windows 系统一致,输入 “import requests” 验证导入,再进行简单的请求测试。
四、Lxml 库安装与验证
Lxml 是一个高性能的 XML 和 HTML 解析库,它基于 C 语言编写,解析速度快,支持 XPath 语法,在爬虫开发中常用于解析网页 HTML 数据。
(一)安装 Lxml 库
Lxml 库的安装可能会因为系统环境的不同而遇到一些问题,以下是不同系统的安装方法:
- Windows 系统:
直接使用 pip 安装可能会因为缺少相关依赖(如 libxml2、libxslt)而失败,此时可以先安装预编译的二进制包。推荐使用 Unofficial Windows Binaries for Python Packages(https://www.lfd.uci.edu/~gohlke/pythonlibs/)网站提供的 Lxml 二进制包。
如果直接使用 “pip install lxml” 能成功安装,则无需下载二进制包。
-
- 打开该网站,在页面中搜索 “lxml”,根据你的 Python 版本和系统位数选择对应的.whl 文件(如 lxml-4.9.1-cp310-cp310-win_amd64.whl,其中 cp310 表示 Python 3.10 版本,win_amd64 表示 64 位 Windows 系统)。
-
- 下载完成后,打开命令提示符,进入.whl 文件所在的目录(比如下载到了 “D:\Downloads” 目录,就输入 “cd D:\Downloads”)。
-
- 然后输入以下命令安装:
pip install lxml-4.9.1-cp310-cp310-win_amd64.whl # 替换为你下载的文件名
2.macOS 系统:
首先需要安装 Xcode 命令行工具,在终端中输入以下命令:
xcode-select --install
按照提示完成安装后,再输入以下命令安装 Lxml:
pip3 install lxml
3.Linux 系统:
-
- Ubuntu 系统:
先安装依赖库:
sudo apt install libxml2-dev libxslt-dev python3-dev
然后安装 Lxml:
pip3 install lxml
-
- CentOS 系统:
先安装依赖库:
sudo yum install libxml2-devel libxslt-devel python3-devel
然后安装 Lxml:
pip3 install lxml
(二)验证 Lxml 库
- 进入 Python 交互环境(Windows 输入 “python”,macOS 和 Linux 输入 “python3”)。
- 输入 “from lxml import etree”,如果没有报错,说明 Lxml 库导入成功。
- 可以进行简单的 HTML 解析测试:
html = "<html><body><h1>Python爬虫</h1></body></html>"
tree = etree.HTML(html)
result = tree.xpath("//h1/text()")
print(result) # 输出['Python爬虫']
如果输出正确的结果,则说明 Lxml 库能正常使用。
五、BeautifulSoup 库安装与验证
BeautifulSoup(简称 BS4)是一个强大的 HTML 和 XML 解析库,它能自动修复不规范的 HTML 代码,提供了简单易用的 API 来提取网页数据,常与 Lxml 配合使用(BeautifulSoup 可以指定使用 Lxml 作为解析器,提高解析效率)。
(一)安装 BeautifulSoup 库
BeautifulSoup 的安装比较简单,直接使用 pip 即可:
- Windows 系统:
在命令提示符中输入:
pip install beautifulsoup4
2.macOS 和 Linux 系统:
在终端中输入:
pip3 install beautifulsoup4
安装完成后,命令行会显示 “Successfully installed beautifulsoup4-x.x.x”,表示安装成功。
(二)验证 BeautifulSoup 库
- 进入 Python 交互环境。
- 输入 “from bs4 import BeautifulSoup”,如果没有报错,说明 BeautifulSoup 库导入成功。
- 进行简单的 HTML 解析测试(指定 Lxml 作为解析器):
html = "<html><body><div class='content'><p>BeautifulSoup测试</p></div></body></html>"
soup = BeautifulSoup(html, "lxml")
result = soup.find("p").text
print(result) # 输出'BeautifulSoup测试'
如果能正确提取到标签中的文本内容,则说明 BeautifulSoup 库能正常使用,并且成功配合 Lxml 解析器工作。
六、综合测试:编写第一个简单爬虫
完成所有依赖库的安装后,我们可以编写一个简单的爬虫来测试整个环境是否正常工作。这个爬虫将使用 Requests 发送请求获取百度首页的 HTML 内容,然后使用 Lxml 和 BeautifulSoup 解析页面,提取页面标题。
(一)编写爬虫代码
- 打开文本编辑器(如 Windows 的记事本、macOS 的文本编辑,或专业的代码编辑器如 VS Code、PyCharm 等)。
- 输入以下代码:
# 导入所需库 import requests from lxml import etree from bs4 import BeautifulSoup # 使用Requests发送GET请求获取百度首页内容 url = "https://www.baidu.com" response = requests.get(url) response.encoding = "utf-8" # 设置编码为utf-8,避免中文乱码 html_content = response.text # 使用Lxml解析HTML,提取页面标题 tree = etree.HTML(html_content) title_lxml = tree.xpath("//title/text()")[0] print("使用Lxml提取的页面标题:", title_lxml) # 使用BeautifulSoup(配合Lxml解析器)解析HTML,提取页面标题 soup = BeautifulSoup(html_content, "lxml") title_bs4 = soup.title.text print("使用BeautifulSoup提取的页面标题:", title_bs4)
(二)运行爬虫代码
- 将代码保存为.py 文件(如 “test_crawler.py”)。
- Windows 系统:
打开命令提示符,进入代码文件所在的目录,输入 “python test_crawler.py” 运行代码。
3.macOS 和 Linux 系统:
打开终端,进入代码文件所在的目录,输入 “python3 test_crawler.py” 运行代码。
(三)查看运行结果
如果运行成功,会输出以下内容:
使用Lxml提取的页面标题: 百度一下,你就知道
使用BeautifulSoup提取的页面标题: 百度一下,你就知道
这说明你的 Python 爬虫环境已经完全搭建成功,Requests、Lxml、BeautifulSoup 三个库都能正常工作。
七、常见问题与解决方案
- pip 安装库时提示 “Permission denied”(权限不足):
-
- Windows 系统:以管理员身份打开命令提示符(右键点击 “命令提示符”,选择 “以管理员身份运行”),再重新执行安装命令。
-
- macOS 和 Linux 系统:在安装命令前加上 “sudo”,如 “sudo pip3 install requests”,然后输入管理员密码即可。
2.导入库时提示 “ModuleNotFoundError: No module named 'xxx'”(找不到模块):
- macOS 和 Linux 系统:在安装命令前加上 “sudo”,如 “sudo pip3 install requests”,然后输入管理员密码即可。
-
- 首先检查是否正确安装了该库,可以重新执行安装命令。
-
- 检查是否使用了正确的 Python 版本,比如在 macOS 和 Linux 系统中,是否误将 “python3” 写成了 “python”(导致使用 Python 2.x 环境,而库安装在 Python 3.x 环境中)。
3.Lxml 安装失败:
- 检查是否使用了正确的 Python 版本,比如在 macOS 和 Linux 系统中,是否误将 “python3” 写成了 “python”(导致使用 Python 2.x 环境,而库安装在 Python 3.x 环境中)。
-
- 按照本文第四部分的方法,先安装相关依赖库(如 libxml2-dev、libxslt-dev 等),再尝试安装 Lxml。
-
- Windows 系统可以直接下载预编译的.whl 文件进行安装,避免编译过程中出现错误。
通过以上步骤,你已经成功搭建了 Python 爬虫所需的基础环境,并掌握了 Requests、Lxml、BeautifulSoup 三个核心库的安装与验证方法。接下来,你可以基于这个环境,开始学习爬虫的核心技术,如网页数据提取、动态网页爬取、爬虫反反爬策略等,逐步实现更复杂的爬虫项目。
更多推荐

所有评论(0)