- 新增 DrissionPage 基础教程(01-05) - 新增 Playwright 基础教程(01-05) - 新增网络基础教程(01-05) - 新增 test_learning_examples.py 单元测试 - 更新 .gitignore 忽略 learning/*/output/ 目录
DrissionPage Basics
这里放的是你已经学过的第一阶段内容。
这一组练习围绕当前项目真实使用的 DrissionPage 工作流展开,重点是先把“打开页面、附着浏览器、监听接口、解析数据、下载文件”这条链路打通。
建议学习顺序
01_open_page.py02_attach_browser.py03_listen_api.py04_parse_aweme.py05_download_video.py
开始前先准备
在项目根目录执行:
python3 -m venv .venv
source .venv/bin/activate
pip install requests DrissionPage
如果你要练附着浏览器,先单独启动登录浏览器:
./.venv/bin/python login_douyin.py --browser-port 9223
练习原则
- 不要复制主脚本全部代码
- 每次只补一个文件
- 跑起来后先
print()看对象和数据结构 - 先写最小可运行版本,再做整理
- 如果报错,优先看报错里提到的对象类型和字段名
每个文件你应该关注什么
01_open_page.py
- 学会创建
ChromiumPage - 学会
page.get(url) - 学会确认页面是否真的打开
运行:
./.venv/bin/python learning/drissionpage_basics/01_open_page.py
02_attach_browser.py
- 学会通过
127.0.0.1:9223附着到已启动 Chrome - 学会验证附着的是不是你刚才登录的浏览器
运行:
./.venv/bin/python learning/drissionpage_basics/02_attach_browser.py
03_listen_api.py
- 学会
page.listen.start(...) - 学会
page.listen.wait(timeout=...) - 学会观察返回包的
response.body和response.raw_body
运行:
./.venv/bin/python learning/drissionpage_basics/03_listen_api.py
04_parse_aweme.py
- 不连浏览器,只拿示例数据练解析
- 学会从
aweme_list提取标题、视频 id、视频 url
运行:
./.venv/bin/python learning/drissionpage_basics/04_parse_aweme.py
05_download_video.py
- 学会用
requests下载一个 mp4 - 学会写入本地文件
- 学会验证文件是否真的下载成功
运行:
./.venv/bin/python learning/drissionpage_basics/05_download_video.py
推荐你的手动练法
- 先补
01,只做到“能打开页面” - 再补
02,只做到“能附着到浏览器” - 再补
03,只做到“能打印监听结果” - 再补
04,只做到“能把字段提出来” - 最后补
05,把一个视频链接下载到learning/drissionpage_basics/output/
练完后再回看主脚本
等你把这 5 个文件都手写过一遍,再回头看这些文件会更清楚:
重点看:
create_pagepage.listen.startpage.listen.waitextract_aweme_payloadparse_aweme_itemsdownload_video