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:

  1. 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.
  2. 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:

  1. Verificación de encabezados de solicitud: requiere encabezados específicos, como g-timestamp y g-footer
  2. Verificación de cookies: requiere cookies de sesión válidas
  3. Huella digital del navegador: verifica el entorno del navegador, huella digital de Canvas, etc.
  4. 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

  1. Clonar el repositorio: git clone https://github.com/tansunyj/mcp_video_download_url_parser.git
  2. Entrar al directorio: cd mcp_video_download_url_parser
  3. Instalar dependencias: pip install -r requirements.txt
  4. Iniciar el servidor MCP: python main.py

Configurar Claude Desktop o Cursor

  1. 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:

  1. Subir el proyecto: suba el proyecto a la plataforma de la comunidad Motta

  2. 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"
  }
}
  1. Iniciar el servicio: en la consola de la comunidad Motta, busque el servicio agregado y haga clic en el botón "Iniciar servicio"

  2. 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="指定保存路径"
)
  1. 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


GitHub repo