Conversor de Artigo WeChat para Markdown
O que esta ferramenta faz
Converte artigos de contas públicas WeChat em arquivos Markdown limpos com:
- Frontmatter YAML (título, autor, data, URL de origem)
- Imagens baixadas localmente
- Blocos de código preservados com detecção de linguagem
- Extração de referências de áudio/vídeo
- Formatação limpa (sem ruído da interface WeChat)
Pré-requisitos
- Python 3.10+
- Instalar dependências:
pip install -r requirements.txt - O navegador Camoufox será baixado automaticamente na primeira execução
Uso
CLI (artigo individual)
python main.py "https://mp.weixin.qq.com/s/ARTICLE_ID"
CLI (lote a partir de arquivo)
python main.py -f urls.txt -o ./output -v
Opções da CLI
| Flag | Descrição |
|---|---|
-f FILE | Arquivo de texto com URLs (uma por linha) |
-o DIR | Diretório de saída (padrão: ./output) |
-c N | Concorrência de download de imagens (padrão: 5) |
--no-images | Pular download de imagens, manter URLs remotas |
--no-headless | Mostrar o navegador (para resolver CAPTCHAs) |
--force | Sobrescrever saída existente |
--no-frontmatter | Usar metadados em blockquote em vez de YAML |
-v | Log detalhado/debug |
Servidor MCP
Execute como um servidor MCP para integração com ferramentas de IA:
python mcp_server.py
Expõe duas ferramentas:
convert_article(url, output_dir, download_images, concurrency, use_frontmatter)— Converte um único artigobatch_convert(urls, output_dir, download_images, concurrency)— Converte múltiplos artigos
Configuração MCP (para claude_desktop_config.json ou similar)
{
"mcpServers": {
"wechat-to-md": {
"command": "python",
"args": ["mcp_server.py"],
"cwd": "<caminho-para-este-projeto>"
}
}
}
Estrutura de Saída
saida/
<titulo-do-artigo>/
<titulo-do-artigo>.md # Arquivo Markdown com frontmatter YAML
images/
img_001.png
img_002.jpg
...
Problemas Comuns
- Página CAPTCHA/verificação: Execute com
--no-headlesspara resolver manualmente o CAPTCHA na janela do navegador e tente novamente. - Conteúdo vazio: O WeChat pode limitar a taxa de requisições. Aguarde alguns minutos e tente novamente.
- Falhas no download de imagens: Imagens com falha mantêm suas URLs remotas no markdown. Execute novamente com
--forcepara tentar novamente.
Limitações
- Suporta apenas artigos de
mp.weixin.qq.com - Requer conexão com internet ativa e capacidade de executar um navegador headless
- O WeChat pode bloquear acesso automatizado; Camoufox ajuda a evitar detecção, mas não é garantido