Heim  >  Artikel  >  Backend-Entwicklung  >  So exportieren Sie Artikel zu öffentlichen WeChat-Konten in Python

So exportieren Sie Artikel zu öffentlichen WeChat-Konten in Python

coldplay.xixi
coldplay.xixinach vorne
2020-08-29 16:34:182992Durchsuche

So exportieren Sie Artikel zu öffentlichen WeChat-Konten in Python

Verwandte Lernempfehlungen: Python-Tutorial

1. Installieren Sie wkhtmltopdf

Download-Adresse: https://wkhtmltopdf.org/downloads.html

Ich habe es unter Windows getestet Das Herunterladen und Installieren erfolgt wie folgt:

2 Schreiben Sie Python-Code, um Artikel über öffentliche WeChat-Konten zu exportieren. Sie können wkhtmltopdf nicht direkt zum Exportieren von Artikeln über öffentliche WeChat-Konten verwenden. Den exportierten Artikeln fehlen daher Bilder, daher müssen Sie zum Erfassen wechatsogou verwenden Öffnen Sie die Artikelseite des öffentlichen WeChat-Kontos und konvertieren Sie dann den HTML-Text in PDF. ! ! Nachdem ich die Codes vieler Leute gelesen habe, sind sie alle eine Vorlage. Jeder hat sie immer wieder kopiert, aber es funktioniert immer noch nicht. Vielleicht liegt es daran, dass das abhängige Paket aktualisiert wurde, oder es liegt daran, dass ich das nicht habe Umgebungsvariable von wkhtmltopdf lokal konfiguriert

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

ws_api = wechatsogou.WechatSogouAPI(captcha_break_time=3)
def url2pdf(url, title, targetPath):
    '''
    使用pdfkit生成pdf文件
    :param url: 文章url
    :param title: 文章标题
    :param targetPath: 存储pdf文件的路径
    '''
    try:
        content_info = ws_api.get_article_content(url)
    except:
        return False
    # 处理后的html
    html = f'''
    <!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)

Verwandte Lernempfehlungen:

WeChat Mini-Programm-Tutorial

Das obige ist der detaillierte Inhalt vonSo exportieren Sie Artikel zu öffentlichen WeChat-Konten in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:csdn.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen