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

抓取微信微信官方账号文章,保存为PDF文件(Python方法)

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

抓取微信微信官方账号文章,保存为PDF文件(Python方法)

【相关学习推荐:微信微信官方账号开发教程】

前言:第一次写博客,主要内容是抓取微信微信官方账号的文章,以PDF格式保存在本地。

爬微信微信官方账号文章(使用微信sogou)1。Install Pip Install we chatsogou --UpgradeChatsogou是一个基于搜狗微信搜索的微信微信官方账号爬虫接口。

2.用法使用方法如下

import we chat sogou # captcha _ break _ time是验证码重试不正确的次数。默认值为1ws _ API = wechatsogoug . wechatsogouapi(captcha _ break _ time = 3)#微信官方账号名称gzh _ name = # 39'#将微信官方账号中最后10篇文章的信息以字典形式返回data = ws _ API . get _ gzh _ article _ by _ history(gzh _ name)数据结构:

{ 'gzh # 39: { '微信_姓名 # 39;: ''# Name # 39微信_ id # 39: ''#微信id # 39简介 # 39;: '',#简介 # 39;认证 # 39;: ''#认证 # 39;headimage # 39: ''# avatar }、 # 39;第 # 39;: [ { 'send _ id # 39:int,#群发id,注意不唯一,因为多条消息同时发送,群发id是一样的 # 39;日期时间 # 39;:int,#发送组中DataTime的10位时间戳 # 39;类型 # 39;: ''、#消息类型,都是49个(手机历史消息页还有其他类型,网页最后10个消息页只有49个),表示图文 # 39;main # 39:int,#是批量传输的第一条消息,1还是0 # 39;标题 # 39;: ''#文章标题 # 39;摘要 # 39;: ''#摘要 # 39;fileid # 39:int,# # 39;content _ url # 39: '',#文章链接 # 39;source _ url # 39: '',#阅读原文链接 # 39;封面 # 39;: '',#封面图片 # 39;作者 # 39;: '',#作者 # 39;copyright _ stat # 39:int,#文章类型,例如:原创},...]}这里你需要获取两条信息:文章标题和文章网址。

得到文章的url后,就可以根据url把html页面转换成pdf文件了。

生成PDF文件1。安装wkhtmltopdf下载地址:https://wkhtmltopdf.org/downloads.html

2.安装PDF包安装PDF包3。使用import pdfkit#方法生成PDFPDFKit。From _ url根据网址( # 39;http://Baidu . com # 39;,'out.pdf # 39)#从html文件生成pdf pdf kit . from _ file( # 39;test.html # 39,'out.pdf # 39)#根据html代码生成pdfpdfkit . from _ string( # 39;你好!','out.pdf # 39)如果直接使用上面获取的文章的url生成pdf,会出现pdf文件不显示文章图片的问题。

解决方案:

#该方法根据文章的url对html进行处理,使图片显示content _ info = ws _ API . get _ article _ content(URL)#获取html代码(代码不完整,需要添加head、body等标签)。html _ code = content _ info[ # 39;content _ html # 39]然后根据html_code构造一个完整的html代码,调用pdfkit.from_string()方法生成一个pdf文件。这时,你会发现文章中的图片显示在pdf文件中。

完整代码导入OS导入pdfkitimport datetime导入wechatsogou #初始化API ws _ API = we chatsogou . we chatsogou API(captcha _ break _ time = 3)def URL 2 pdf(URL,title,target path): # 39;''用pdfkit生成pdf文件:param URL:article URL:param title:article title:param target path:存储pdf文件的路径 # 39;''try:content _ info = ws _ API . get _ article _ content(URL)except:return false # processed html html = f # 39;'' lt!DOCTYPE html gt lthtml lang = 恩 gt lthead gt ltmeta charset = ut F-8 ; gt lttitle gt{ title } lt/title gt; lt/head gt; ltbody gt lth2 style = text-align:居中;font -重量:400;" gt{ title } lt/H2 gt;{ content _ info[ # 39;content _ html # 39]} lt;/body gt; lt/html gt;'''try: pdfkit.from_string(html,target path+OS . path . sep+f # 39;{title}。pdf # 39)除外:#部分文章标题包含特殊字符,不能用作文件名filename = datetime.datetime.now()。strftime( # 39;% Y % m % d % H % M % S # 39) + '。pdf # 39pdfkit.from_string(html,target path+OS . path . sep+filename)if _ _ name _ _ = = # 39;_ _ main _ _ # 39:#这里是要抓取的微信官方账号的名称gzh _ name = # 39'target path = OS . getcwd()+OS . path . sep+gzh _ name #如果没有目的文件夹,则创建它如果没有OS . path . exists(target path):OS . makeders(target path)#将微信官方账号最后10篇文章的信息返回data = ws _ API . get _ gzh _ article _ by _ history(gzh _ name)article _ list =字典形式的数据[ # 39;第 # 39;]for article _ list中的文章:URL = article[ # 39;content _ url # 39]title = article[ # 39;标题 # 39;] url2pdf(url,title,targetPath)以上是抓取微信微信官方账号文章并保存为pdf文件(Python方法)的详细内容。请多关注主机参考其他相关文章!

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

本文由主机参考刊发,转载请注明:抓取微信微信官方账号文章,保存为PDF文件(Python方法) https://zhujicankao.com/75701.html

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

评论 抢沙发

评论前必须登录!