python 公众号爬虫_python爬取公众号,用最简单的方式爬虫

目标公众号:吃鸡搞笑视频

设备:python集成工具--pyCharm

之所以称之为最近单方式,是因为--代码少,效果好

这里只爬了公众号的标题和链接,先上效果

da8abb1a109e

代码效果图

da8abb1a109e

image.png

操作步骤:

1、先自己申请一个公众号,链接:https://mp.weixin.qq.com/

2、登录自己的账号,新建文章图文,点击超链接

da8abb1a109e

image.png

3、弹出搜索框,搜索自己需要的公众号,查看历史文章

da8abb1a109e

搜索公众号

da8abb1a109e

查看历史文章

通过抓包获取请求的url

da8abb1a109e

获取请求url

通过点击下一页,多次获取url发现,只有bengin的参数发生变化

da8abb1a109e

image.png

所以我们确定了url,开始爬虫吧

da8abb1a109e

image.png

报错信息如下,应该是缺少cookie和其他相关参数

添加上cookie进行,爬取,发现完全没问题(测试发现cookie的有效期很长),那就完全可用,方式被发现是爬虫我又添加了两个参数:

Host:域名 Referer:上次的请求 是我的操作更像浏览器

完整代码如下

# -*- coding: utf-8 -*-

import requests

import jsonpath

headers = {

"User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36",

"Host": "mp.weixin.qq.com",

"Referer": "https://mp.weixin.qq.com/cgi-bin/appmsg?t=media/appmsg_edit&action=edit&type=10&isMul=1&isNew=1&lang=zh_CN&token=1862390040",

"Cookie": "防止cookie过期,爬虫前,设置自己刚获取的cookie值"

}

for i in range(44):

url = "https://mp.weixin.qq.com/cgi-bin/appmsg?token=1862390040&lang=zh_CN&f=json&ajax=1&random=0.17794584803309532&action=list_ex&begin={}&count=5&query=&fakeid=&type=9".format(str(i * 5))

response = requests.get(url, headers = headers)

jsonRes = response.json()

titleList = jsonpath.jsonpath(jsonRes, "$..title")

urlList = jsonpath.jsonpath(jsonRes, "$..link")

# 遍历 构造可存储字符串

for index in range(len(titleList)):

title = titleList[index]

url = urlList[index]

scvStr = "%s,%s,\n" % (title, url)

with open("info.csv", "a+", encoding="gbk", newline='') as f:

f.write(scvStr)

一共700+信息,没有丢数据

da8abb1a109e

爬虫结果图

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值