目录
前文生成了python代码爬取豆瓣电影信息,得到静态页面,可以创建一个 GitHub Actions 工作流,自动运行 Python 脚本抓取数据,并生成 HTML 页面,然后将其部署到 GitHub Pages 上。
准备GitHub仓库
- 创建一个新的 GitHub 仓库(如 douban-movies-nowplaying)。
- 将之前的 Python 脚本保存为 main.py(确保它能正确生成 douban_hot_movies.html)。
- 添加 requirements.txt 文件,列出依赖:
1
2requests
beautifulsoup4
创建 GitHub Actions 工作流
在项目根目录创建 .github/workflows/deploy.yml,内容如下:
1 | name: Deploy Douban Movies |
建立gh-pages分支并修改文件生成路径
python脚本生成的html文件换到docs子目录下。
导入import os
1 | def save_html(html_content, filename="docs/douban_movies.html"): |
新建gh-pages分支。
启用 GitHub Pages
进入仓库的 Settings > Pages。
选择 部署来源 为 GitHub Actions。
手动触发首次运行
提交代码后,进入 Actions 标签页。
选择 Deploy Douban Movies 工作流,点击 Run workflow 手动触发。
访问生成的页面
工作流运行完成后,访问:
https://<GitHub用户名>.github.io/douban-movies-nowplaying/douban_hot_movies.html
示例(html文件名改成了index.html):
https://qs100371.github.io/douban-movies-nowplaying/index.html
最终效果:
- 自动运行:每天更新豆瓣热映电影数据;
- 自动部署:生成 HTML 并发布到 GitHub Pages;
- 手动触发:可随时手动更新数据。
还有,数据生成时间是按utc得来的,和东8区差8个小时,ds也给出了修改方法。
1 | from datetime import datetime |