Python 爬虫入门实战
爬虫技术通过编程自动从网页获取信息。简单来说,当你查看网页源代码时看到的 HTML 结构就是爬虫的目标对象,它像一位机器人帮你阅读并提取内容。
一、基本流程
一个完整的爬虫通常包含三个步骤:
- 发送请求:向目标网页发起 HTTP 请求,获取原始内容。
- 解析网页:从返回的 HTML 或 JSON 中提取所需数据。
- 保存数据:将提取的信息存储到文件或数据库中。
二、核心库与安装
Python 生态中有两个最常用的库:requests 负责网络通信,BeautifulSoup 负责 HTML 解析。
在终端执行以下命令即可安装(推荐使用国内镜像加速):
pip install requests beautifulsoup4 -i https://pypi.tuna.tsinghua.edu.cn/simple
三、实战示例
1. 获取网页内容
首先使用 requests 抓取百度首页。这里直接打印响应文本,你会看到大量的 HTML 源码。
import requests
url = 'https://www.baidu.com'
response = requests.get(url)
print(response.text)
注意:实际开发中建议检查
response.status_code确保请求成功。
2. 解析页面标题
拿到 HTML 后,用 BeautifulSoup 解析。我们尝试提取 <title> 标签的内容。
from bs4 import BeautifulSoup
soup = BeautifulSoup(response.text, 'html.parser')
title = soup.title.text
print('网页标题:', title)
输出结果类似:
网页标题:百度一下,你就知道
3. 批量提取链接
如果想抓取页面上所有的文章链接,可以遍历所有 <a> 标签。
links = soup.find_all('a')
for link in links:
href = link.get('href')
if href:
print(href)
这里用 get('href') 比直接访问属性更安全,防止某些标签没有该属性导致报错。
四、进阶场景处理
静态与动态网页
上述例子针对的是静态网页。如果数据由 JavaScript 动态加载(如滚动加载更多),浏览器渲染后的 DOM 才是真实数据。此时可以使用 模拟浏览器行为。


