VPS参考测评推荐
专注分享VPS主机优惠信息
衡天云优惠活动
荫云优惠活动
wexlayer优惠活动
最新

爬取微信公众号文章并保存为PDF文件(Python方法)(如何爬取微信公众号数据)

主机参考:VPS测评参考推荐/专注分享VPS服务器优惠信息!若您是商家可以在本站进行投稿,查看详情!此外我们还提供软文收录、PayPal代付、广告赞助等服务,查看详情!
我们发布的部分优惠活动文章可能存在时效性,购买时建议在本站搜索商家名称可查看相关文章充分了解该商家!若非中文页面可使用Edge浏览器同步翻译!PayPal代付/收录合作

【相关学习推荐:微信公众号开发教程】

简介

如果你是第一次写博客,主要内容是爬取微信公众号文章,将文章转换为PDF。 格式保存在本地。

爬取Wechatsogou文章(使用wechatsogou) 1.安装 pip install wechatsogou --upgrade

wechatsogou是基于搜狗微信搜索的Wechatsogou爬虫接口

2.使用方法

用法如下。

import wechatsogou# captcha_break_time为验证码输入错误时的重试次数,默认为1ws_api = wechatsogou.WechatSogouAPI(captcha_break_time=3)# 公众号名称 gzh_name = ''# 更改公众号最后一次信息以字典格式返回 10 篇文章 data = ws_api.get_gzh_article_by_history(gzh_name)

数据数据结构:

{ 'gzh ': { 'wechat_name': '', # 姓名 'wechat_id': '', # 微信ID '简介' : '', #简介 'authentication': '', # 身份验证 'headimage': '' # 头像 }, '文章le ': [{'send_id': Int,#l发送ID,注意不要唯一,因为同一组同时发送多条消息,组ID一致。 tetime': int, # 海量数据时间10位时间戳 'type': '', # 消息类型,均为49(手机历史消息页面还有其他类型,网页上有最新的)10 个显示图像和文本的消息页面(仅 49 个) 'main': int, # 这是组中发送的第一条消息吗? 1 或 0 'title': '', # 文章标题 “源地址”:“源地址” 'copyright_stat': int, #文章类型, 示例: 原创 }, ... ... ]}

这里我们需要检索两条信息:文章标题和文章网址。

获得文章 URL 后,您可以根据该 URL 将 HTML 页面转换为 PDF 文件。

生成PDF文件 1.安装wkhtmltopdf

下载地址:https://wkhtmltopdf.org/downloads.html

2.安装pdfkitpip并安装pdfkit3。 根据URL('http://baidu.com','out.pdf')使用import pdfkit#方法生成pdfkit.from_url#生成pdfkit.from_file('test.html','out.pdf') on html文件#根据html代码生成pdfpdfkit.from_string('Hello!','out.pdf')

直接使用上面获取的文章URL 当我生成 PDF 时会出现此问题。 验证 PDF 文件中是否未显示文章图像。

解决方案:

# 这个方法是根据文章URL来的。处理HTML,使图片显示 content_info = ws_api.get_article_content(url)# 获取HTML代码(代码不完整,需要添加head、body等标签) html_code = content_info['content_html']

然后根据html_code HTML代码构建完整的文件并调用pdfkit.from_string()方法创建PDF 生成文件。 这时,你可以看到文章中的照片显示为PDF文件。

完整代码 import osimport pdfkitimport datetimeimport wechatsogou#初始化 APIws_api = wechatsogou.WechatSogouAPI(captcha_break_time=3)def url2 pdf(url, title, targetPath): ''' 使用 pdfkit 生成 PDF 文件 :param url: 文章 url :参数标题:文章标题:参数 targetPath: 保存 PDF 文件的路径 ''' Try: content_info = ws_api.get_article_content(url) but: return False # 处理后的 html html = f''' nbsp;html>                                                                 pdfkit.from_string(html, targetPath + os.path.sep + f'{title}.pdf') 除外: 有些文章标题包含特殊字符,不能用作文件名。 文件名 = datetime.datetime.now().strftime(' %Y%m%d%H%M%S') + '.pdf' pdfkit.from_string(html, targetPath + os.path.sep + 文件名)if __name__ == '__main__': #待爬取的公众号名称 gzh_name = '' targetPath = os.getcwd() + os.path.sep + g zh_name # 目标文件夹不存在则创建 if os.path.exists(targetPath): os.makedirs(targetPath) # 以字典格式返回公众号最新10条文章信息 data = ws_api.get_gzh_article_by_history(gzh_name) ,article_list = data['article'],article_list中的文章:url = Article['content_url']标题 =article['title'] url2pdf(url, title, targetPath) 相关学习推荐:Python教程WPS初学者到专家全套教程!

从零基础入门到精通全网最新、最详细、最实用的WPS教程! 包括基本的Excel操作、函数设计、数据透视表等。

下载

这几篇文章你可能也喜欢:

本文由主机参考刊发,转载请注明:爬取微信公众号文章并保存为PDF文件(Python方法)(如何爬取微信公众号数据) https://zhujicankao.com/141575.html

【腾讯云】领8888元采购礼包,抢爆款云服务器 每月 9元起,个人开发者加享折上折!
打赏
转载请注明原文链接:主机参考 » 爬取微信公众号文章并保存为PDF文件(Python方法)(如何爬取微信公众号数据)
主机参考仅做资料收集,不对商家任何信息及交易做信用担保,购买前请注意风险,有交易纠纷请自行解决!请查阅:特别声明

评论 抢沙发

评论前必须登录!