Your AI-powered secondhand deal hunter, with bureaucracy
A self-hosted system that watches Xianyu listings, scores them with multimodal AI, and pings you when something matches—complete with a web dashboard for managing the whole operation.

What it does This is a monitoring and notification system for Xianyu (闲鱼), a Chinese secondhand marketplace. It uses Playwright to scrape listings, then passes item images and details through a vision-capable AI model to judge whether something is worth your attention. If the AI approves, it fires off alerts via Telegram, WeChat Work, Bark, ntfy.sh, or a generic webhook. Everything is managed through a web UI built on FastAPI and a Vite frontend.
The interesting bit The project treats “finding a good deal” as an industrial process. You don’t just set keyword alerts; you write natural-language requirements and the AI generates its own evaluation criteria in a background job. It also handles the adversarial side of scraping gracefully—multiple Xianyu accounts, proxy rotation with blacklisting, and automatic retry when anti-bot measures trigger.
Key highlights
- Multimodal AI analysis: feeds product images plus metadata to an OpenAI-compatible vision model for go/no-go decisions
- Full web dashboard: task creation, account management, prompt editing, result browsing, and execution logs
- Cron-scheduled tasks with per-task keywords, price ranges, region filters (province/city/district), and shipping preferences
- Multi-account and proxy pool support with failure thresholds and automatic rotation
- Docker-first deployment with Chromium baked into the image; SQLite persistence for tasks, results, and price history
- Chrome extension provided for exporting Xianyu login state JSON, since the app needs your cookies to scrape
Caveats
- Requires your own OpenAI-compatible API key and base URL; the AI analysis is not free
- Xianyu login state expires and needs periodic refresh via the Chrome extension
- Region filtering significantly narrows results; the docs suggest leaving it blank for initial market scouting
- Default web credentials are
admin/admin123—the README explicitly warns to change these in production
Verdict Worth a look if you’re a serious Xianyu bargain hunter with API budget and a tolerance for cookie management. Skip it if you want a fire-and-forget SaaS; this is self-hosted infrastructure with real operational surface area.