第一阶段:python 爬虫基础入门(6小时)
1.1 环境搭建与安装
- 安装 Python
下载并安装 Python 最新版本:Python 官方下载 - 安装开发工具
推荐使用 Visual Studio Code 或 PyCharm 编辑器。 - 安装必要的库
打开终端并运行以下命令:pip install requests beautifulsoup4 lxml
1.2 HTTP 基础与爬虫流程
- 理解 HTTP 请求和响应:GET、POST 请求的区别。
- 介绍常见的状态码(200, 404, 500)。
- 爬虫基本流程:发送请求 → 获取网页数据 → 数据解析。
第二阶段:实用爬虫开发进阶(18小时)
2.1 使用 Requests 库发送请求(2小时)
- 示例:抓取百度首页 HTML 代码。
import requests
url = “https://www.baidu.com”
response = requests.get(url)
print(response.text)
2.2 BeautifulSoup 数据解析(4小时)
- 从 HTML 解析页面结构:
from bs4 import BeautifulSoup
html = “<html><body><h1>Hello, world!</h1></body></html>”
soup = BeautifulSoup(html, ‘lxml’)
print(soup.h1.text) - 使用 CSS 选择器定位数据:获取指定标签内容。
2.3 处理动态加载数据(5小时)
- 使用 Selenium 模拟浏览器操作:
pip install selenium
示例代码:
from selenium import webdriver
driver = webdriver.Chrome()
driver.get(“https://www.taobao.com”)
print(driver.page_source)
driver.quit()
2.4 爬取图片、文件、视频数据(3小时)
- 使用 Requests 下载文件:
url = "https://example.com/image.jpg"
response = requests.get(url)
with open("image.jpg", "wb") as f:
f.write(response.content)
2.5 数据存储(4小时)
- 存储为 CSV 文件:
import csv
data = [[“Name”, “Age”], [“Alice”, 30], [“Bob”, 25]]
with open(“data.csv”, “w”, newline=“”) as f:
writer = csv.writer(f)
writer.writerows(data) - 存储到 MySQL 数据库(连接配置与存储)。
第三阶段:实战项目与案例应用(24小时)
3.1 项目一:豆瓣电影排行榜数据爬取(8小时)
- 目标:爬取电影名称、评分和评论数量。
- 代码结构:包括请求、解析与存储模块。
3.2 项目二:淘宝商品信息采集(8小时)
- 模拟搜索,获取商品名称、价格和链接。
- 使用 Selenium 处理动态加载内容。
3.3 项目三:天气信息自动爬取与通知(4小时)
- 爬取天气预报,并通过邮件或微信通知用户。
3.4 项目四:自动化表单填写与任务自动化(4小时)
- 使用 Selenium 完成表单填写与自动登录。
常见问题(FAQ)
1. 爬取数据时遇到反爬怎么办?
- 添加 User-Agent 模拟浏览器:
headers = {"User-Agent": "Mozilla/5.0"}
response = requests.get(url, headers=headers)
2. 动态内容加载怎么办?
- 使用 Selenium 模拟用户操作或抓取 AJAX 请求。
3. 如何避免爬虫被封?
- 控制请求频率,使用时间延迟:
import time
time.sleep(2) # 等待 2 秒