🇨🇳 中文
Pixiv Encyclopedia Viewer History Extractor
🇺🇸 English | 🇮🇳 हिंदी | 🇯🇵 日本語 | 🇨🇳 简体中文 | 🇪🇸 Español | 🇧🇷 Português (Brasil) | 🇰🇷 한국어 | 🇩🇪 Deutsch | 🇫🇷 Français

用于提取 Pixiv Encyclopedia Viewer Count History 的工具
日文 README
日文版请见 README.ja.md.
概览
从 Pixiv Encyclopedia (pixiv百科事典) 文章中提取每日浏览历史数据。
Pixiv Encyclopedia viewer history 是一个很好的真实世界时间序列数据集。
它通常会显示:
- 周期性周内模式(weekday vs weekend traffic)
- 由 events 或 social media buzz 引发的偶发 spikes
你可以将提取出的 CSV 用作以下场景的 sample data:
- Time-series visualization 和 smoothing
- Seasonal decomposition
- Forecasting models (ARIMA, Prophet, etc.)
⚠️ 非官方 tool
本 project 与 Pixiv 没有关联,也未获得 Pixiv 的 endorsement。
使用此 script 时,请遵守 Pixiv’s Terms of Use 和 robots.txt。
功能
- 直接从 Pixiv Encyclopedia 按 article title(e.g.,
"ブルーアーカイブ")fetch - 或从 local HTML file 读取
- 向 stdout 输出 JSON Lines
(每行一个{"date": "...","count": ...}) - 通过
--csv output.csv可选地进行 CSV export
要求
- Python 3.9+
- Dependencies:
requestsbeautifulsoup4
用法
0. 创建 virtual environment
python3 -m venv env
source env/bin/activate
pip install -r requirements.txt
1. 按 article title fetch
python src/extract_viewer_history.py "ブルーアーカイブ"
这将:
- 下载
https://dic.pixiv.net/a/ブルーアーカイブ - parse embedded JSON
- 向 stdout 每行 print 一个 JSON object:
{"date": "2025-07-01", "count": 9454605}
{"date": "2025-07-02", "count": 9331510}
{"date": "2025-07-03", "count": 8884117}
...
你可以将其 redirect 到 file:
python src/extract_viewer_history.py "ブルーアーカイブ" > ブルーアーカイブ.jsonl
2. Export as CSV
使用 --csv option 写入 CSV file,同时仍然将 JSON print 到 stdout:
python src/extract_viewer_history.py "ブルーアーカイブ" --csv ブルーアーカイブ.csv
CSV content 示例:
date,count
2025-07-01,9454605
2025-07-02,9331510
2025-07-03,8884117
...
3. 使用 local HTML file
如果你已经保存了 article HTML:
python src/extract_viewer_history.py ブルーアーカイブ.html
python src/extract_viewer_history.py ブルーアーカイブ.html --csv ブルーアーカイブ.csv
Script 会检测到 ブルーアーカイブ.html 是一个 file,并会 parse 它,而不是从 web fetch。
4. Test
pip install -r requirements.test.txt
pytest
5. Deactivate environment
deactivate
Notes / Limitations
- 尚未实现 rate limiting;请:
- 负责任地使用
- 避免在短时间内发送大量 requests
- 这是一个简单的 utility script,主要用于 personal analysis 或 research。
License
- Apache License 2.0