爬虫技术通过编程自动获取网页信息,本质上是一个模拟浏览器行为的'机器人'。当你查看网页源代码时,那些 HTML 结构就是爬虫抓取的目标。本文将带你从零开始,掌握 Python 爬虫的核心流程与实战技巧。
一、核心流程
一个标准的爬虫通常包含三个步骤:
- 发送请求:向目标 URL 发起 HTTP 请求,获取原始响应内容。
- 解析数据:从返回的 HTML 或 JSON 中提取关键信息。
- 保存结果:将提取的数据写入文件或数据库,便于后续分析。
二、环境准备
Python 生态中有两个最常用的库:requests 用于网络请求,BeautifulSoup 用于解析 HTML。安装命令如下:
pip install requests beautifulsoup4 -i https://pypi.tuna.tsinghua.edu.cn/simple
三、静态页面抓取实战
我们以百度首页为例,演示如何获取并解析内容。
1. 获取网页源码
使用 requests.get() 发送请求,response.text 即为网页的 HTML 字符串。
import requests
url = 'https://www.baidu.com'
response = requests.get(url)
print(response.text)
运行后会看到大量 HTML 代码,这就是百度的页面结构。
2. 解析标题信息
拿到源码后,用 BeautifulSoup 解析 DOM 树,提取我们需要的标签内容。
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')
text = link.get_text(strip=True)
if href and text:
print(f'{text}: ')


