Maison  >  Article  >  développement back-end  >  Comment exporter des articles de compte public WeChat en python

Comment exporter des articles de compte public WeChat en python

coldplay.xixi
coldplay.xixiavant
2020-08-29 16:34:182992parcourir

Comment exporter des articles de compte public WeChat en python

[Recommandations d'apprentissage associées : Tutoriel Python]

1. Installer wkhtmltopdf

Adresse de téléchargement : https://wkhtmltopdf.org/downloads.html

J'ai utilisé Windows pour les tests. Après le téléchargement et l'installation, les résultats sont les suivants

<.>

2 Écrivez du code python pour exporter les articles du compte public WeChat

Vous ne pouvez pas utiliser directement wkhtmltopdf pour exporter les articles du compte public WeChat. Les articles exportés manqueront d'images, vous devez donc utiliser wechatsogou pour capturer le WeChat. page d'article du compte public, puis convertissez le texte HTML Convertir en pdf

pip install wechatsogou --upgrade

pip install pdfkit

Piège! ! ! Après avoir lu les codes de beaucoup de gens, ils sont tous un modèle. Tout le monde les a copiés encore et encore, mais cela ne fonctionne toujours pas parce que le package de dépendances est mis à jour, ou peut-être parce que je ne l'ai pas. la variable d'environnement de wkhtmltopdf configurée localement

import os
import pdfkit
import datetime
import wechatsogou
# 初始化API

ws_api = wechatsogou.WechatSogouAPI(captcha_break_time=3)
def url2pdf(url, title, targetPath):
    &#39;&#39;&#39;
    使用pdfkit生成pdf文件
    :param url: 文章url
    :param title: 文章标题
    :param targetPath: 存储pdf文件的路径
    &#39;&#39;&#39;
    try:
        content_info = ws_api.get_article_content(url)
    except:
        return False
    # 处理后的html
    html = f&#39;&#39;&#39;
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>{title}</title>
    </head>
    <body>
    <h2 style="text-align: center;font-weight: 400;">{title}</h2>
    {content_info[&#39;content_html&#39;]}
    </body>
    </html>
    &#39;&#39;&#39;
    try:
        path_wk="E:/softwareAPP/wkhtmltopdf/bin/wkhtmltopdf.exe";
        config=pdfkit.configuration(wkhtmltopdf=path_wk)
        pdfkit.from_string(input=html, output_path=targetPath,configuration=config)

    except:
        # 部分文章标题含特殊字符,不能作为文件名
        filename = datetime.datetime.now().strftime(&#39;%Y%m%d%H%M%S&#39;) + &#39;.pdf&#39;
        pdfkit.from_string(html, targetPath + os.path.sep + filename)



if __name__ == &#39;__main__&#39;:
    # 此处为要爬取公众号的名称

    url2pdf("https://mp.weixin.qq.com/s/wwT5n2JwEEAkrrmOhedziw", "HBase的系统架构全视角解读","G:/test/hbase文档.pdf" )
    # gzh_name = &#39;&#39;
    # # 如果不存在目标文件夹就进行创建
    # if not os.path.exists(targetPath):
    #     os.makedirs(targetPath)
    # # 将该公众号最近10篇文章信息以字典形式返回
    # data = ws_api.get_gzh_article_by_history(gzh_name)
    # article_list = data[&#39;article&#39;]
    # for article in article_list:
    #     url = article[&#39;content_url&#39;]
    #     title = article[&#39;title&#39;]
    #     url2pdf(url, title, targetPath)

Recommandations d'apprentissage associées :

Tutoriel du mini programme WeChat

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer