Commit Graph

15 Commits

Author SHA1 Message Date
tmwgsicp f9968a4e0d fix: run container as root to resolve volume permission issue
- Remove non-root user (appuser) to eliminate SQLite database creation failures
- Users no longer need to manually create data directory or fix permissions
- Version bump to 1.0.3

Fixes #5

Made-with: Cursor
2026-03-24 20:02:45 +08:00
tmwgsicp 752f555f0c feat: support audio share articles (item_show_type=7) and improve content detection
Major Updates:
- Add support for item_show_type=7 audio/video share pages with basic metadata extraction
- Enhance is_audio_message() with strict regex to avoid false positives
- Improve get_unavailable_reason() to correctly distinguish verification pages
- Add friendly placeholder text for pure-image articles
- Add comprehensive CONTENT_TYPES.md documentation

Technical Improvements:
- Fix pure-image articles being misidentified as audio articles
- Fix WeChat verification pages being marked as permanently unavailable
- Fix empty Vue app (privacy page) detection logic
- Optimize article type detection priority based on item_show_type

Documentation:
- Add CONTENT_TYPES.md with detailed explanations of all content types
- Update README.md to reference new documentation
- Document known limitations for audio articles

Note: Audio articles (type=7) use dynamic Vue apps, so only basic metadata
(title, author, cover image) can be extracted. Full audio URL extraction
would require browser environment.

Made-with: Cursor
2026-03-24 13:45:37 +08:00
tmwgsicp 0fb8ba2484 fix: add missing beautifulsoup4 dependency for audio article support
- Add beautifulsoup4>=4.12.0 to requirements.txt
- Required by utils/helpers.py _extract_audio_content() function
- Used for parsing HTML in audio message extraction (line 286)
- Fixes 'No module named bs4' error when processing audio articles

This dependency was introduced when audio article support was added
but was not included in requirements.txt, causing runtime errors.

Made-with: Cursor
2026-03-24 03:29:15 +08:00
tmwgsicp a8de1961db docs: update README and docker-compose to use Docker Hub images
- Add Docker deployment section with quick start guide
- Update docker-compose.yml to use pre-built images from Docker Hub
- Add Docker Pulls badge to README
- Reorganize quick start to show Docker first (recommended method)

Made-with: Cursor
2026-03-24 02:36:16 +08:00
tmwgsicp 35f0fb7c0b feat: add Docker support with multi-arch build and CI/CD
- Add Dockerfile with multi-stage build for smaller image size
- Add docker-compose.yml for one-command deployment
- Add .dockerignore for optimized build context
- Add GitHub Actions workflow for automated Docker Hub publishing (amd64/arm64)
- Make RSS_DB_PATH configurable via environment variable
- Update env.example with database path option

Fixes #2

Made-with: Cursor
2026-03-24 02:21:14 +08:00
tmwgsicp 94a0b78ca8 feat: add audio extraction, type-10 posts, and comprehensive unavailability detection
Made-with: Cursor
2026-03-23 14:19:41 +08:00
tmwgsicp f9ccb1b2ae fix: support image-text messages and multi-container article extraction 2026-03-21 06:23:24 +08:00
tmwgsicp 4825edc355 feat: add aggregated RSS feed, CSV and OPML export 2026-03-20 01:25:38 +08:00
tmwgsicp 869c5c0c92 fix: remove HTML size filter and fix nested div extraction
- article_fetcher: remove 500KB length check that falsely rejected valid articles (most articles are 50-300KB)

- content_processor: replace non-greedy regex with depth-counting approach to correctly extract content from nested divs
2026-03-18 23:15:09 +08:00
tmwgsicp ee704f87b1 feat(rss): RSS支持完整文章内容+图片代理修复
核心功能:
1. RSS包含完整文章内容(图文混排),可在阅读器中直接阅读全文
2. 修复RSS图片显示问题,所有图片通过代理正常显示

技术实现:
- 新增content_processor处理文章内容,保持图文顺序
- 新增image_proxy统一处理图片URL代理
- 新增article_fetcher支持批量并发获取文章
- 使用SITE_URL环境变量(必需配置)
- 使用minidom+CDATA防止HTML被XML转义

配置要求:
- 必须在.env中配置SITE_URL(如http://IP:5000)
- 强烈建议配置PROXY_URLS避免账号风控

Made-with: Cursor
2026-03-07 21:47:21 +08:00
tmwgsicp 55bb0a6134 feat(rss): RSS支持完整文章内容+图片代理修复
核心功能:
1. RSS包含完整文章内容(图文混排),可在阅读器中直接阅读全文
2. 修复RSS图片显示问题,所有图片通过代理正常显示

技术实现:
- 新增content_processor处理文章内容,保持图文顺序
- 新增image_proxy统一处理图片URL代理
- 新增article_fetcher支持批量并发获取文章
- 使用SITE_URL环境变量(必需配置)
- 使用minidom+CDATA防止HTML被XML转义

配置要求:
- 必须在.env中配置SITE_URL(如http://IP:5000)
- 强烈建议配置PROXY_URLS避免账号风控

Made-with: Cursor
2026-03-07 20:18:44 +08:00
tmwgsicp a975b4afac docs: announce SaaS launch and add deployment guide
Made-with: Cursor
2026-02-26 10:50:21 +08:00
tmwgsicp fb903d8038 docs: update README with RSS screenshot and SaaS preview
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-25 15:03:24 +08:00
tmwgsicp 3d9cc480e9 feat: add RSS subscription, proxy pool and anti-fingerprint
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-25 14:19:06 +08:00
tmwgsicp 3c14b15c87 init: wechat-download-api v1.0.0
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-24 10:47:18 +08:00