M3 数据获取与处理
MODULE 3 · L12–L15
数据获取与处理
4 课时
课时安排
L12HTTP 与 Web 基础
请求/响应模型、HTTP 方法(GET/POST)、状态码(200/404/500)、请求头响应头;JSON 数据格式;F12 Network 面板实测——浏览器怎么拿到数据的,这是爬虫和 API 调用的共同基础。
V022 · HTTP请求与响应模型V023 · JSON格式与F12面板
L13API 调用与数据获取实战作业②发布
requests 库、RESTful API、JSON 响应处理、错误处理(超时/限流/认证)。课堂调用 3 个公开 API(天气/新闻/电影),提取字段、格式化输出。
V024 · requests库与API调用实战
L14网页爬取精要
HTML 结构、BeautifulSoup + CSS 选择器、静态页爬取全流程;爬虫伦理与 robots.txt;动态页面与数据接口概念(细节交 AI 辅助)。旧课 6 节爬虫压缩为 1 节精要课。
V025 · BeautifulSoup与CSS选择器V026 · 爬虫伦理与robots.txt
L15数据处理与可视化
Pandas(Series/DataFrame、read_csv、筛选统计、groupby)、Matplotlib 基础图表。用 L13/L14 获取的数据走完「原始数据 → 清洗统计 → 可视化结论」全链路。
V027 · Pandas数据处理速通V028 · Matplotlib可视化基础
HTTP 全景:一次请求的完整过程
L12 开课先建立这个模型,此后 F12 面板里看到的每个字段都能对应到模型中的概念:
── 请求(浏览器 → 服务器)────────────────────
GET /v1/now?city=beijing HTTP/1.1
Host: api.weather.cn
User-Agent: Mozilla/5.0 ... ← 你是谁(爬虫要伪装的就是它)
Accept: application/json
── 响应(服务器 → 浏览器)────────────────────
HTTP/1.1 200 OK ← 200 成功 / 404 未找到 / 500 服务器内部错误 / 429 被限流
Content-Type: application/json
{"city": "北京", "temp": "26℃", "aqi": 42} ← JSON:字典的模样
爬虫与 API 调用本质是同一件事:模仿浏览器发请求、解析响应。区别只在——API 直接给数据,网页需要你从 HTML 里「挑」数据。
L15 全链路迷你版(浏览器可运行)
requests / pandas 依赖本地环境,但「拿到 JSON → 清洗统计 → 输出结论」的思路可以先在这里跑通。 这段代码模拟了 L15 课堂对「电影评分数据」的处理流程:
爬虫礼仪三问(L14)
能不能爬?
先访问 域名/robots.txt 看站长是否允许;Disallow 的路径不要碰。法律上还要尊重网站条款与个人信息保护法。
该不该爬?
加 time.sleep()、避开高峰;你的每一次请求都是别人的服务器成本。课堂上演示过请求过快被封禁 IP 的真实案例。
用来干什么?
学习研究可以;商用、转卖、爬隐私数据不行。数据的使用比获取更需要注意边界。
随堂小测
延伸阅读
经典笔记:12.1 Web基本概念 · 13.5 数据接口爬取 · 14.1 Bilibili 分析(含封禁 IP 实录) · 15.2 Pandas · 15.4 实例讲解
📽️ 授课课件:W6–W7 课件 →