MCP Video Download URL Parser
Descarga videos sin marca de agua de plataformas como Douyin y TikTok.
Documentación
MCP Video Download URL Parser
Esta es una herramienta de descarga de videos basada en MCP, compatible con plataformas como Douyin y TikTok para descargar videos sin marca de agua.
Características
- Compatible con la descarga de videos sin marca de agua desde plataformas como Douyin, TikTok y Bilibili
- Utiliza Playwright para simular un entorno de navegador y evadir las medidas anti-scraping del sitio web
- Extrae automáticamente el título del video y el enlace de descarga
- Admite rutas de descarga personalizadas
- Compatible con la ejecución como servicio MCP
Instalación de dependencias
# 安装Python依赖
uv pip install -r requirements.txt
# 安装Playwright浏览器
playwright install
Métodos de uso
Ejecutar como servicio MCP
uv run --index-url https://mirrors.aliyun.com/pypi/simple/ main.py
Luego puede llamar a la función download_video a través de MCP:
# MCP调用示例
result = await mcp_video_url_parser_download_video(url="https://v.douyin.com/your_video_id/", output_path="D:\\视频")
Usar directamente el script de prueba
# 使用默认测试URL
uv run direct_test.py
# 指定视频URL
uv run direct_test.py "https://v.douyin.com/your_video_id/"
Implementación técnica
Esta herramienta utiliza dos métodos para extraer la URL del video:
-
Simulación de navegador con Playwright (método principal):
- Simula completamente un entorno de navegador real
- Accede automáticamente al sitio web snapany.com
- Ingresa el enlace del video y hace clic en el botón de extracción
- Escucha las respuestas de la API o extrae directamente los elementos del video de la página
- Evade las medidas anti-scraping del sitio web, como la verificación de encabezados de solicitud, verificación de cookies, etc.
-
Solicitud directa a la API (método de respaldo):
- Envía solicitudes directamente a la API de snapany.com
- Agrega los encabezados y parámetros de solicitud necesarios
- Maneja múltiples formatos de respuesta posibles
Solución para medidas anti-scraping
El sitio web snapany.com tiene medidas anti-scraping estrictas, que incluyen:
- Verificación de encabezados de solicitud: requiere encabezados específicos, como g-timestamp y g-footer
- Verificación de cookies: requiere cookies de sesión válidas
- Huella digital del navegador: verifica el entorno del navegador, huella digital de Canvas, etc.
- Generación de firmas dinámicas: puede generar firmas dinámicamente basadas en múltiples factores
Al usar Playwright para simular completamente el entorno del navegador, hemos logrado evadir estas medidas anti-scraping. Playwright proporciona un entorno de navegador real, incluyendo ejecución de JavaScript, gestión de cookies e interceptación de solicitudes, lo que nos permite interactuar con el sitio web como un usuario real.
Notas
- Esta herramienta es solo para fines de aprendizaje e investigación
- Respete los términos de uso y las regulaciones de derechos de autor de las plataformas correspondientes
- No la use con demasiada frecuencia para evitar ejercer presión sobre el sitio web objetivo
Instalación y ejecución
Instalación a través de Smithery
Para instalar automáticamente MCP Video Download URL Parser para Claude Desktop a través de Smithery:
npx -y @smithery/cli install @tansunyj/mcp_video_download_url_parser --client claude
Instalación manual
- Clonar el repositorio:
git clone https://github.com/tansunyj/mcp_video_download_url_parser.git - Entrar al directorio:
cd mcp_video_download_url_parser - Instalar dependencias:
pip install -r requirements.txt - Iniciar el servidor MCP:
python main.py
Configurar Claude Desktop o Cursor
- Agregue la siguiente configuración:
{
"mcpServers": {
"video-url-parser": {
"command": "python",
"args": [
"/path/to/mcp_video_download_url_parser/main.py"
],
"env": {}
}
}
}
Configuración de implementación en la comunidad Motta (Cursor)
Para implementar este servicio MCP en la plataforma de la comunidad Motta, siga estos pasos:
-
Subir el proyecto: suba el proyecto a la plataforma de la comunidad Motta
-
Configurar el servicio: en la consola de la comunidad Motta, busque la sección "Configuración del servicio MCP" y agregue la siguiente información de configuración:
{
"name": "video-url-parser",
"description": "视频下载解析工具",
"version": "1.0.0",
"main": "main.py",
"requirements": ["playwright", "asyncio", "aiohttp", "beautifulsoup4"],
"environmentVariables": {
"DOWNLOAD_PATH": "./downloads"
}
}
-
Iniciar el servicio: en la consola de la comunidad Motta, busque el servicio agregado y haga clic en el botón "Iniciar servicio"
-
Llamada al servicio: en la comunidad Motta, puede llamar al servicio de la siguiente manera:
# 调用示例
result = await mcp_video_url_parser_download_video(
url="https://v.douyin.com/your_video_id/",
output_path="指定保存路径"
)
- Solución de problemas comunes:
- Asegúrese de que todas las dependencias estén instaladas correctamente
- Verifique que las variables de entorno estén configuradas correctamente
- Si hay problemas de red, confirme que el servidor pueda acceder a los sitios web de las plataformas de video
- Si el servicio no puede iniciarse, revise los registros para obtener información detallada del error
Ejemplos de uso
Después de la configuración, puede usar los siguientes comandos:
- "Descargar este video: [video_url]"
- "Guardar este video en el directorio D:/videos: [video_url]"
Variables de entorno
DOWNLOAD_PATH: ruta para guardar los videos descargados (predeterminado: ./downloads)
Desarrollo
Para participar en el desarrollo:
git clone https://github.com/tansunyj/mcp_video_download_url_parser.git
cd mcp_video_download_url_parser
python -m pytest tests/
Seguridad
Este servidor MCP se ejecuta en su máquina local. Aunque no ejecuta código arbitrario, tenga cuidado al analizar URL de fuentes no confiables.
Agradecimientos
Este proyecto utiliza la API de SnapAny.com para el análisis y la descarga de videos.
Licencia
Licencia MIT