python抓取微信公众号文章,Python爬取微信公众号代码
前言本文的文字及图片过滤网络,可以学习,交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理。
基本开发环境Python 3.6皮查姆爬取两个公众号的文章:1,爬取青灯编程公众号所有的文章
2,爬取所有关于大蟒的公众号文章
爬取青灯编程公众号所有的文章1,登陆公众号之后点击图文
2,打开开发者工具
3,点击超链接
相关的数据加载出来,就有关于数据包,包含了文章标题,链接,摘要,发布时间等等,也可以选择其他的公众号也可以爬取的,但是这需要你有一个微信公众号。
要加甜饼干
导入美观打印数据结构
导入时间
导入请求
导入战斗支援车
f=打开(青灯公众号文章 csv ,模式=a ,编码=utf-8 ,换行符= )
csv_writer=csv .DictWriter(f,fieldnames=[标题, 文章发布时间, 文章地址])
csv_writer.writeheader()
对于范围(0,40,5)内的页面:
URL=f https://MP。微信。QQ。com/CGI-bin/appmsg?action=list _ ex begin={ page } count=5 fake id=type=9 query=token=1252678642 lang=zh _ CN f=JSON Ajax=1
标题={
cookie :加cookie ,
"推荐人“: https://MP . weixin . QQ . com/CGI-bin/appmsg?t=media/appmsg _ edit _ v2 action=edit is new=1 type=10 create type=0 token=1252678642 lang=zh _ CN ,
用户代理: Mozilla/5.0(Windows NT 10.0;WOW64) AppleWebKit/537.36 (KHTML,像壁虎一样)Chrome/81。0 .4044 .138 Safari/537.36 ,
}
response=requests.get(url=url,headers=headers)
html_data=response.json()
pprint.pprint(response.json())
lis=html_data[app_msg_list]
李斯对李说:
标题=李[标题]
link_url=li[link]
update_time=li[update_time]
时间数组=时间。本地时间(int(update _ time))
otherStyleTime=时间。strftime( % Y-% M-% d % H:% M:% S ,timeArray)
dit={
标题:标题,
文章发布时间:otherStyleTime,
文章地址:link_url,
}
csv_writer.writerow(dit)
打印(dit)爬取所有关于大蟒的公众号文章1,搜狗搜索大蟒选择微信
注意:如果不登陆只能爬取前十页数据,登陆之后可以爬取2W多篇文章。
2,爬取标题,公众号,文章地址,发布时间静态网页直接爬取即可
导入时间
导入请求
导入帕塞尔
导入战斗支援车
f=打开(公众号文章 csv ,模式=a ,编码=utf-8 ,换行符= )
csv_writer=csv .DictWriter(f,fieldnames=[标题, 公众号, 文章发布时间, 文章地址])
csv_writer.writeheader()
对于范围内的页面(1,2447):
URL=f https://薇信。搜狗。com/weixin?query=python _ sug _ type _=s _ from=input _ sug _=n type=2 page={ page } ie=utf8
标题={
Cookie :自己的cookie ,
主持人:“weixin.sogou.com”,
"推荐人“: https://www.sogou.com/web?query=python _ ASF=www。搜狗。com _ ast=w=01019900 p=40040100 ie=utf8 from=index-nologin s _ from=index SUT=1396 SST 0=1610779538290 lkt=0,0,0 sug SUV=1590216228113568 sug time=1610779538290 ,
用户代理: Mozilla/5.0(Windows NT 10.0;WOW64) AppleWebKit/537.36 (KHTML,像壁虎一样)Chrome/81。0 .4044 .138 Safari/537.36 ,
}
response=requests.get(url=url,headers=headers)
选择器=parsel .选择器(响应。文本)
lis=selector.css( .新闻列表李)
李斯对李说:
title_list=li.css(.txt-box h3a:text’).getall()
num=len(title_list)
如果数量==1:
title _ str= python title _ list[0]
否则:
title_str=python .加入(标题列表)
href=li.css( .txt-box h3 a:attr(href)).获取()
article _ URL= https://微信。搜狗。com href
name=li.css(.s-p a:text’).获取()
date=li.css( .属性(t)).获取()
时间数组=时间。本地时间(int(date))
otherStyleTime=时间。strftime( % Y-% M-% d % H:% M:% S ,timeArray)
dit={
标题:标题_字符串,
公众号:名称,
文章发布时间:otherStyleTime,
文章地址:文章_网址,
}
csv_writer.writerow(dit)
打印(标题字符串,名称,其他样式时间,文章网址)
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。