边走边聊 Python 3.8:Chapter 8:爬虫入门:边走边抓点数据玩

张开发
2026/4/15 6:53:14 15 分钟阅读

分享文章

边走边聊 Python 3.8:Chapter 8:爬虫入门:边走边抓点数据玩
Chapter 8:爬虫入门:边走边抓点数据玩互联网是最大的数据库,而爬虫是你进入它的方式。本章将带你从最基础的 HTTP 请求开始,逐步掌握 requests、BeautifulSoup、正则表达式等核心技能。你会学会如何模拟浏览器、如何解析网页、如何保存数据,并完成一个完整的爬虫小项目。“互联网是最大的数据库,而爬虫是你的钥匙。”大家好!前面7篇我们已经把 Python 基础、文件操作、数据处理都过了一遍。今天我们正式进入爬虫入门,边走边玩,真正抓点数据回家。目标很简单:用最少的代码、最少的依赖,抓取豆瓣电影 Top 250,并保存成 Excel 文件。整个教程严格遵循 Python 3.8 在 Win7 上的兼容性,所有代码都经过 3.8 测试,保证能直接跑。1. 准备工作(Win7 + Python 3.8 专属提示)确认 Python 版本命令行输入:python --version必须显示Python 3.8.x。如果不是,重新安装官方 3.8.10 版本(Win7 推荐 32位或64位视你系统而定)。安装所需库(一次搞定)pip install requests beautifulsoup4 openpyxlrequests:发 HTTP 请求(3.8 完美兼容)beautifulsoup4:解析 HTML(推荐搭配html.parser,Win7 无需额外安装 lxml)openpyxl:读写 Excel(纯 Python,Win7 无兼容问题)Win7 常见坑:如果 pip 报错“无法连接 PyPI”,先执行python -m pip install --upgrade pip,再重试。2. requests 基础 + Headers 伪装(核心原理)爬虫本质就是模拟浏览器向服务器发 HTTP 请求。底层原理(简单说):HTTP 协议(超文本传输协议):浏览器(客户端)发送 GET 请求,服务器返回 HTML。requests底层调用urllib3,帮我们处理了连接池、编码、重定向等脏活。Headers 里的 User-Agent是服务器判断“你是浏览器还是爬虫”的关键。没有它,豆瓣很容易返回 403 拒绝。实战代码(伪装成 Chrome):importrequestsfromtimeimportsleepimportrandom headers={'User-Agent':'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36','Referer':'https://movie.douban.com/top250'# 豆瓣喜欢检查来源}defget_page(url):try:r=requests.get(url,headers=headers,timeout=10)r.encoding='utf-8'# 防止中文乱码(Win7 必备)ifr.status_code==200:returnr.textelse:print(f"请求失败:{r.status_code}")returnNoneexceptExceptionase:print(f"请求异常:{e}

更多文章