爬虫技术本质是通过编程自动获取网页信息。当你打开网页查看源代码时,那些 HTML 结构就是爬虫的目标对象。它像一位不知疲倦的机器人,帮你阅读并提取网页内容。
一、爬虫的基本流程
整个流程其实很直观,主要分为三步:
- 发送请求:向目标网页发起 HTTP 请求,拿到原始内容。
- 解析网页:从返回的 HTML 或 JSON 中定位并提取所需数据。
- 保存数据:将清洗后的信息写入文件或数据库,方便后续处理。
二、核心工具库
Python 生态里有几个非常成熟的库,足以应对大部分场景:
- requests:负责网络通信,发送请求和接收响应。
- BeautifulSoup:擅长解析 HTML/XML,快速定位标签。
安装准备
在终端执行以下命令即可(清华源镜像能提升国内下载速度):
pip install requests beautifulsoup4 -i https://pypi.tuna.tsinghua.edu.cn/simple
三、实战:抓取静态页面
我们先写一个最简单的脚本,以百度首页为例,看看如何把网页内容拿下来。
1. 获取内容
使用 requests 发送 GET 请求,拿到响应对象后直接读取文本。
import requests
url = 'https://www.baidu.com'
response = requests.get(url)
print(response.text)
这里 response.text 会返回完整的 HTML 源码。运行后你会看到一大段代码,这就是网页的结构。
2. 解析数据
拿到源码后,用 BeautifulSoup 来'读'懂它。比如我们要提取标题:
from bs4 import BeautifulSoup
# 初始化解析器
soup = BeautifulSoup(response.text, 'html.parser')
# 获取 title 标签内的纯文本
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)


