环境配置
本章将介绍 Python 爬虫开发所需的环境配置,包括 Python 安装、虚拟环境创建和必要库的安装。
Python 环境
安装 Python
首先确保你已经安装了 Python。建议使用 Python 3.8 或更高版本。
# 检查 Python 版本
python --version
# 或
python3 --version
如果未安装,请访问 Python 官网 下载安装。
创建虚拟环境
创建虚拟环境是 Python 开发的最佳实践,可以隔离不同项目的依赖。
# 使用 venv 创建虚拟环境
python -m venv spider-env
# 激活虚拟环境
# Windows:
spider-env\Scripts\activate
# macOS / Linux:
source spider-env/bin/activate
# 激活后,命令行会显示环境名称
# (spider-env) C:\Users\xxx>
安装爬虫库
核心依赖
# 安装 requests - HTTP 请求库
pip install requests
# 安装 BeautifulSoup - HTML 解析库
pip install beautifulsoup4
# 安装 lxml - 高性能解析器(推荐)
pip install lxml
# 安装 html5lib - 容错性强的解析器
pip install html5lib
可选依赖
# 安装 Scrapy - 专业爬虫框架
pip install scrapy
# 安装 Selenium - 浏览器自动化
pip install selenium
# 安装 Playwright - 现代浏览器自动化
pip install playwright
playwright install chromium
# 安装 httpx - 异步 HTTP 库
pip install httpx
# 安装 aiohttp - 异步 HTTP 库(另一个选择)
pip install aiohttp
# 安装 selectolax - 快速 HTML 解析
pip install selectolax
# 安装 pymongo - MongoDB 驱动
pip install pymongo
# 安装 pymysql - MySQL 驱动
pip install pymysql
# 安装 psycopg2 - PostgreSQL 驱动
pip install psycopg2
# 安装 pandas - 数据处理
pip install pandas
使用 requirements.txt
建议将项目依赖保存到 requirements.txt 文件:
# 导出当前环境的所有依赖
pip freeze > requirements.txt
# 从 requirements.txt 安装依赖
pip install -r requirements.txt
requirements.txt 示例:
requests==2.31.0
beautifulsoup4==4.12.2
lxml==4.9.3
selenium==4.15.0
浏览器驱动
如果需要使用 Selenium 或 Playwright 进行浏览器自动化,需要安装对应的浏览器驱动。
Selenium 浏览器驱动
# Chrome 浏览器
# 下载 ChromeDriver: https://chromedriver.chromium.org/
# 将 chromedriver 放到系统 PATH 中
# 或使用 webdriver-manager 自动管理
pip install webdriver-manager
Playwright 浏览器驱动
# 安装 Playwright
pip install playwright
# 安装浏览器(首次使用)
playwright install chromium
playwright install firefox
playwright install webkit
开发工具
IDE 推荐
- VS Code - 免费开源,强大的插件生态
- PyCharm - 专业 Python IDE,功能强大
- Sublime Text - 轻量级编辑器
浏览器开发者工具
浏览器开发者工具是爬虫开发的必备技能,可以帮助我们分析网页结构。
打开方式:
- Chrome/Edge:
F12或Ctrl+Shift+I(Mac:Cmd+Opt+I) - Firefox:
F12或Ctrl+Shift+I(Mac:Cmd+Opt+I)
开发者工具常用面板
- Elements(元素)面板 - 查看和编辑 HTML 元素
- Network(网络)面板 - 查看网络请求
- Console(控制台)面板 - 查看 JavaScript 输出
- Application(应用)面板 - 查看 Cookie、LocalStorage 等
第一个爬虫程序
让我们创建一个简单的爬虫来验证环境配置:
import requests
from bs4 import BeautifulSoup
def test_environment():
"""测试爬虫环境是否配置正确"""
# 1. 测试 requests 库
print("1. 测试 requests 库...")
response = requests.get("https://httpbin.org/get")
print(f" 状态码: {response.status_code}")
# 2. 测试 BeautifulSoup
print("2. 测试 BeautifulSoup 库...")
html = "<html><body><h1>Hello</h1></body></html>"
soup = BeautifulSoup(html, "lxml")
print(f" 解析结果: {soup.h1.text}")
# 3. 测试 lxml 解析器
print("3. 测试 lxml 解析器...")
html = "<html><body><p class='test'>Test</p></body></html>"
soup = BeautifulSoup(html, "lxml")
print(f" 选择器测试: {soup.select_one('p.test').text}")
print("\n✅ 环境配置成功!")
if __name__ == "__main__":
test_environment()
运行结果:
1. 测试 requests 库...
状态码: 200
2. 测试 BeautifulSoup 库...
解析结果: Hello
3. 测试 lxml 解析器...
选择器测试: Test
✅ 环境配置成功!
项目结构
建议的爬虫项目结构:
my-spider/
├── spider-env/ # 虚拟环境
├── spiders/ # 爬虫脚本
│ ├── __init__.py
│ ├── basic_spider.py
│ └── ...
├── data/ # 数据存储
│ ├── json/
│ ├── csv/
│ └── database/
├── utils/ # 工具函数
│ ├── __init__.py
│ ├── headers.py
│ └── parser.py
├── requirements.txt # 依赖列表
├── main.py # 入口文件
└── README.md # 项目说明
小结
本章我们学习了:
- Python 环境配置 - 安装 Python 和创建虚拟环境
- 安装爬虫库 - requests、BeautifulSoup、Scrapy 等
- 浏览器驱动 - Selenium 和 Playwright 的安装
- 开发工具 - IDE 和浏览器开发者工具
- 环境测试 - 验证爬虫环境是否正常
练习
- 创建虚拟环境并安装 requests 和 beautifulsoup4
- 使用浏览器开发者工具查看任意网页的 HTML 结构
- 运行上面的环境测试代码