zhinianboke/xianyu-auto-reply es un sistema de gestión automatizado para escenarios de Xianyu. No es un script de respuesta automática con solo unas pocas líneas de reglas, sino un sistema web completo que combina la administración de cuentas, el envío y recepción de mensajes, las respuestas automáticas, las respuestas de IA, el envío automático, el lanzamiento de productos, el procesamiento de pedidos y la administración de backend.
Si solo desea agregar algunas respuestas de palabras clave a los mensajes de Xianyu, puede resultar un poco complicado; si también realiza productos virtuales, envío de cupones, gestión de múltiples cuentas, evaluación automática y lanzamiento de productos, su cobertura funcional es relativamente completa.
¿Qué puede hacer este proyecto?
A juzgar por el proyecto README, el sistema principal cubre principalmente estos módulos:
- Gestión de múltiples cuentas: admite múltiples inicios de sesión de cuentas Xianyu, cambio de estado, mantenimiento de cookies y renovación de inicios de sesión;
- Respuesta automática: admite palabras clave de texto, palabras clave de imagen, respuestas predeterminadas y respuestas específicas de productos;
- Respuesta de IA: admite el acceso a modelos grandes para diálogo contextual y respuestas inteligentes;
- Entrega automática: admite cupones, productos virtuales, reemisión automática y registros de entrega;
- Chat en línea: proporciona una lista de conversaciones, mensajes y enlaces de chat;
- Lanzamiento de producto: admite biblioteca de materiales, biblioteca de direcciones, lanzamiento de producto único, lanzamiento de lotes y registro de lanzamiento;
- Pedidos y evaluación: admite extracción de pedidos, evaluación automática, solicitud de flores rojas y seguimiento de estado;
- Recogida y distribución de productos básicos: incluida la recogida de Goofish, la gestión del suministro y los enlaces de liquidación;
- Notificación y control de riesgos: incluyendo notificación de mensajes, registro de control de riesgos, retroalimentación del sistema y gestión de anuncios.
También hay un subsistema de reembolso promotion en el proyecto, que se utiliza para administrar cuentas de reembolso, reglas de selección de productos, bibliotecas de materiales, reglas de publicación, reglas de eliminación y tareas de compensación. Sin embargo, el archivo README también indica que Docker Compose en el directorio raíz solo cubre el sistema principal de forma predeterminada y que el subsistema de reembolso debe iniciarse por separado.
Pila de tecnología y estructura del sistema.
La pila de tecnología de este proyecto es relativamente típica:
- Servidor: FastAPI, SQLAlchemy 2.0, Loguru;
- Base de datos: MySQL 8.0;
- Caché y asistencia de tareas: Redis 7;
- Automatización del navegador: Dramaturgo, Chromium / Chrome;
- Tareas programadas: APScheduler;
- Interfaz: React 18, TypeScript, Vite, TailwindCSS, Zustand, Lucide React;
- Despliegue: Docker, Docker Compose, Nginx.
La división de servicios también es relativamente clara:
| Servicio | Puerto predeterminado | Función |
|---|---|---|
frontend |
9000 |
Frontal del sistema principal |
backend-web |
8089 |
Puerta de enlace API del sistema principal e interfaz empresarial |
websocket |
8090 |
Xianyu WebSocket, mensajería, inicio de sesión y enlace de pedidos |
scheduler |
8091 |
Envío automático, evaluación, extracción de pedidos, actualización de cookies y otras tareas programadas |
promotion/backend |
8092 |
API de backend de reembolso |
promotion/frontend |
9001 |
Reembolso frontal |
Las dependencias del sistema principal son aproximadamente:
|
|
Es decir, no es una aplicación de contenedor único. Antes de la implementación, es mejor confirmar que el puerto del servidor, la memoria, la persistencia de la base de datos y el proxy inverso estén organizados.
Método de implementación del servidor
Se recomienda utilizar Docker y Docker Compose para la implementación del proyecto. Primero es necesario instalar el servidor:
- Ventana acoplable 20.10+
- Docker componer 2.0+
- CPU mínima de 2 núcleos / 4 GB de RAM
- CPU de 4 núcleos recomendada/8 GB de RAM
El comando de implementación con un solo clic proporcionado por README es:
|
|
El comando de actualización es:
|
|
Si desea ver claramente el contenido del script, primero puede clonar el repositorio y luego implementarlo:
|
|
La primera ejecución generará automáticamente el archivo de configuración .env y docker-compose.deploy.yml, y extraerá la imagen prediseñadas para iniciar el servicio. Una vez completada la implementación, la dirección de acceso predeterminada suele ser:
- Interfaz:
http://服务器IP:9000 - Documentación API:
http://服务器IP:8089/docs-Cuenta predeterminada:admin/admin123
Aquí hay una sugerencia muy práctica: no ejecute ciegamente scripts remotos directamente en el servidor de producción. Al menos ejecútelo primero en una máquina de prueba o descargue el script y compruébelo claramente. Creará configuraciones, extraerá imágenes, limpiará contenedores antiguos e iniciará servicios, y el alcance de los permisos no es pequeño.
Construcción de código fuente local
Si desea compilar desde el código fuente, puede ejecutar en el directorio raíz del repositorio:
|
|
Los comandos comúnmente utilizados incluyen:
| Comando | Descripción |
|---|---|
bash build.sh rebuild |
Elimine contenedores e imágenes antiguos, reconstruya y comience |
bash build.sh start |
Iniciar servicio |
bash build.sh stop |
Detener servicio |
bash build.sh restart |
Reiniciar servicio |
bash build.sh logs |
Ver registros en tiempo real |
bash build.sh status |
Consultar estado del servicio |
También puedes reconstruir un servicio individualmente:
|
|
También se requieren Python 3.11+, Node.js 18+, MySQL, Redis y Chromium/Chrome para el desarrollo del código fuente. Dramaturgo se utiliza en el servicio backend. Si falta el navegador al iniciar sesión o publicar, es necesario ejecutar:
|
|
Cosas que deben cambiarse después de la implementación
La cuenta de administrador predeterminada para este proyecto es:
|
|
Lo primero que debe hacer una vez completada la implementación es cambiar la contraseña. Siempre que el puerto de front-end esté expuesto a la red pública, la contraseña predeterminada equivale a entregar el backend.
Compruebe también estas configuraciones:
CORS_ORIGINS: No utilice*directamente en el entorno de producción;BACKEND_WEB_PUBLIC_URL: se utiliza para generar la URL de un archivo externo, que debe completarse correctamente después del proxy inverso;- HTTPS: es mejor utilizar HTTPS para el acceso a la red externa;
- Volumen de datos MySQL: el envío automático, los productos, los pedidos y el estado de la cuenta están todos en él y se debe realizar una copia de seguridad;
- Directorio de recursos estático: incluye imágenes, materiales y URL de archivos, que también deben incluirse en la copia de seguridad;
- Entorno del navegador Playwright: las funciones de inicio de sesión automático, actualización de cookies y publicación dependen de él.
Si sólo está realizando pruebas en su propia red interna, primero puede usar la IP de la LAN para acceder a ella; si desea utilizarlo en la red pública, se recomienda colocarlo detrás de un proxy inverso y limitar el alcance de acceso del fondo de administración.
¿Para quién es adecuado?
Este programa es más adecuado para estas personas:
- Si tiene varias cuentas de Xianyu, debe verificar los mensajes y el estado de manera unificada;
- Para realizar productos o cupones virtuales, se requieren registros automáticos de entrega y reemisión;
- Responda con frecuencia preguntas similares repetidamente, con la esperanza de utilizar palabras clave o respuestas de IA para reducir la carga de trabajo;
- Tener cierta experiencia en el uso de servidores y Docker;
- Capaz de mantener MySQL, Redis, registros de contenedores y copias de seguridad usted mismo;
- Comprenda los riesgos de las reglas de la plataforma y no tenga la intención de utilizarlas para violar las regulaciones o acosarlo.
No es adecuado para usuarios de base completamente cero. El sistema tiene muchas funciones, lo que también significa que la implementación, la configuración, la resolución de problemas y el control de riesgos son responsabilidad suya.
Riesgos y límites
Para herramientas como Xianyu Automation, lo que realmente debe prestar atención no es “si se puede ejecutar”, sino “si sucederá algo después de ejecutarse”.
Existen al menos algunos riesgos en los que debe pensar de antemano:
- Riesgos de las reglas de la plataforma: las respuestas automáticas, la publicación automática y el envío automático pueden afectar el control de riesgos de la plataforma;
- Riesgo de cuenta: el mantenimiento de cookies, la conexión WebSocket y la automatización del navegador pueden causar anomalías en la cuenta;
- Riesgo de datos: se debe proteger la información de la cuenta, los pedidos, los registros de chat y los materiales de envío;
- Riesgos de seguridad: no exponga el backend, los documentos API y los puertos de la base de datos a la red pública de manera casual;
- Riesgo de cumplimiento: el README establece claramente que el proyecto es solo para aprendizaje e investigación, y recuerda no usarlo para comportamientos que violen las reglas de la plataforma.
Además, este proyecto adopta la licencia AGPL-3.0 y el README establece específicamente “Sin uso comercial”. Si desea volver a desarrollarlo e implementarlo en otros, o incluirlo en procesos comerciales, es mejor leer detenidamente primero las restricciones de LICENCIA y README, y no solo mirar la lista de funciones.
Resumen
zhinianboke/xianyu-auto-reply se posiciona más como un backend automatizado para Xianyu, en lugar de un simple script de respuesta automática. Su ventaja es que tiene una amplia gama de funciones. El sistema principal incluye cuentas, chats, respuestas, envíos, liberaciones, pedidos y registros de control de riesgos. La pila de tecnología también es relativamente moderna y la ruta de implementación de Docker es relativamente clara.
Pero su umbral tampoco es bajo. Debe poder implementar servicios, administrar bases de datos, manejar el entorno Playwright, modificar cuentas predeterminadas, configurar proxy inverso y realizar copias de seguridad de datos. Más importante aún, la propia Xianyu Automation tiene reglas de plataforma y riesgos de control de riesgos de cuentas.
Mi sugerencia es: primero ejecute el sistema principal en el entorno de prueba, conecte solo una cuenta de bajo riesgo y luego considere si ampliar el alcance de uso después de confirmar que los procesos de respuesta, entrega y pedido son estables. No conecte varias cuentas importantes y transacciones reales de inmediato.