How wangshaoxinya/zhihuishuapi works
This is a PySide6 desktop assistant for Zhihuishu course study. The principal workflow is: the user signs in through the embedded browser, the app obtains course and video information, the user selects videos for batch processing, and the app reports study progress while showing updates. The map includes the documented WebSocket course-selection interface and slider verification. Several modules are represented from README capabilities and filenames because their implementations were not sampled; uncertain connections are omitted rather than inferred.
Main entry points: main_window.py Main window · main.py Application startup · Report_progress.py Progress reporting · auth_http_server.py Token receiver
Components 20
Desktop application
- Application startup
main.py - Main window
components/main_window.py - Embedded browser
components/main_window.py - Configuration
modules/config.py - Logging
modules/logger.py
Login and identity
- Token receiver
modules/auth_http_server.py - Auth manager
modules/auth.py - Slider verification
modules/slider_verify_async.py
Course study
- Course retrieval
modules/List_Retrieval.py - Video catalog
modules/videos.py - Batch study queue
modules/Line_up.py - Progress reporting
modules/Report_progress.py
Web interface and updates
- Course selection UI
modules/web.py - WebSocket server
modules/web.py - Progress display
components/main_window.py
Other components
- User
- Zhihuishu login
- Token service
- Zhihuishu study API
- Study progress API
Connections 21
- User → Main window: uses
- Application startup → Main window: opens
- Application startup → Configuration: loads
- Application startup → Logging: logs errors
- Main window → Embedded browser: hosts
- Embedded browser → Zhihuishu login: shows
- Zhihuishu login → Token receiver: posts token
- Token receiver → Auth manager: exchanges token
- Auth manager → Token service: requests token
- Embedded browser → Slider verification: verifies challenge
- Main window → Course retrieval: retrieves courses
- Course retrieval → Zhihuishu study API: requests course data
- Main window → Course selection UI: opens study interface
- Course selection UI → WebSocket server: sends selections
- WebSocket server → Main window: dispatches commands
- Main window → Video catalog: loads videos
- Main window → Batch study queue: starts batch study
- Batch study queue → Progress reporting: reports video progress
- Progress reporting → Study progress API: posts study records
- Main window → Progress display: updates progress
- Progress reporting → Progress display: emits progress