2019-06-04--Python爬取微信公众号准备02-记录中间过程。


下面的代码可以运行,根据我亲自测试,只不过得到的数据类似html代码,还需要用正则表达式提取想要的链接而已。


import requests
import json

class wechatArticle:
    def __init__(self, _biz, _pass_ticket, _appmsg_token, _cookie, _offset=0):
        self.offset = _offset  # 不同公众号不一样
        self.biz = _biz
        self.pass_ticket = _pass_ticket
        self.appmsg_token = _appmsg_token
        self.headers = {
            'cookie': _cookie,
            'User-Agent': 'Mozilla/5.0 (Linux; Android 8.0; FRD-AL00 Build/HUAWEIFRD-AL00; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/57.0.2987.132'

        }

    def get_article_list(self):
        offset = self.offset
        while True:
            api = 'https://mp.weixin.qq.com/mp/profile_ext?action=getmsg&__biz={0}&f=json&offset={1}&count=10&is_ok=1&scene=126&uin=777&key=777&pass_ticket={2}&wxtoken=&appmsg_token={3}&x5=1&f=json'.format(
                self.biz, offset, self.pass_ticket, self.appmsg_token)
            resp = requests.get(api, headers=self.headers).json()
          
            ret, status = resp.get('ret'), resp.get('errmsg')  # 状态信息
            if ret == 0 or status == 'ok':
                offset = resp['next_offset']
                general_msg_list = resp['general_msg_list']
                print(type(general_msg_list),general_msg_list)    # json类型

if __name__ == '__main__':
    biz = 'MzU0NDEwMTc1MA=='  # 浅黑科技
    pass_ticket = 'YDiylNY2QnOm5HbjBMJo%2Bve%2FatcYQxoOv9xbGY9iUcA%3D'
    app_msg_token = '1011_FR%252B8YC8KhPETmcJssqk5XhGw3ba-PJ6gP5Tuxw~~'  # 历史文章
    wap_sid2 = 'COPr9gkScExNVTRXelRYQkJ4LVFCTGdtaWkzYXduaDFsajVSa2VVUTZDR1BNZXphaHhLQ3ZvR1ZxVi00YUxCaVd0YmVYRXhuVF9wRE4yc1VMSXBsdDY0WmNQZDdMdGU2LVJHeTBnOW95TnU4cFc3aHBmekF3QUEw16/Y5wU4DUCVTg=='
    cookie = 'wxuin=1581282621; version=2607033b; pass_ticket={}; wap_sid2={}'.format(pass_ticket, wap_sid2) #我复制的是作者的微信相关id,竟然也可以?都没用我的啊。
    # 以上信息不同公众号每次抓取都需要借助抓包工具做修改,通过fiddler在请求头里就可以找得到。
    wxarticles = wechatArticle(biz, pass_ticket, app_msg_token, cookie)
    wxarticles.get_article_list()

此时,输入的内容是这样的!


image.png
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容