百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 软件资讯 > 正文

python爬虫公众号所有信息,并批量下载公众号视频

ninehua 2024-12-30 06:03 9 浏览

前言

本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。

主要功能

  • 如何简单爬虫微信公众号
  • 获取信息:标题、摘要、封面、文章地址
  • 自动批量下载公众号内的视频

一、获取公众号信息:标题、摘要、封面、文章URL

操作步骤:

1、先自己申请一个公众号 2、登录自己的账号,新建文章图文,点击超链接

代码

 1 import re
 2 ?
 3 import requests
 4 import jsonpath
 5 import json
 6 ?
 7 headers = {
 8 "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",
 9 "Host": "mp.weixin.qq.com",
10 "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",
11 "Cookie": "自己获取信息时的cookie"
12 }
13 ?
14 def getInfo():
15 for i in range(80):
16 # token random 需要要自己的 begin:参数传入
17 url = "https://mp.weixin.qq.com/cgi-bin/appmsg?token=1904193044&lang=zh_CN&f=json&ajax=1&random=0.9468236563826882&action=list_ex&begin={}&count=5&query=&fakeid=MzI4MzkzMTc3OA%3D%3D&type=9".format(str(i * 5))
18 ?
19 response = requests.get(url, headers = headers)
20 ?
21 jsonRes = response.json()
22 ?
23 ?
24 titleList = jsonpath.jsonpath(jsonRes, "$..title")
25 coverList = jsonpath.jsonpath(jsonRes, "$..cover")
26 urlList = jsonpath.jsonpath(jsonRes, "$..link")
27 ?
28 # 遍历 构造可存储字符串
29 for index in range(len(titleList)):
30 title = titleList[index]
31 cover = coverList[index]
32 url = urlList[index]
33 ?
34 scvStr = "%s,%s, %s,\n" % (title, cover, url)
35 with open("info.csv", "a+", encoding="gbk", newline='') as f:
36 f.write(scvStr)

获取结果(成功):

二、获取文章内视频:实现批量下载

通过对单篇视频文章分析,我找到了这个链接:

通过网页打开发现,是视频的网页下载链接:

哎,好像有点意思了,找到了视频的网页纯下载链接,那就开始吧。

发现链接里的有一个关键参数vid 不知道哪来的? 和获取到的其他信息也没有关系,那就只能硬来了。

通过对单文章的url请求信息里发现了这个参数,然后进行获取。

1 response = requests.get(url_wxv, headers=headers)
2 ?
3 # 我用的是正则,也可以使用xpath
4 jsonRes = response.text # 匹配:wxv_1105179750743556096
5 dirRe = r"wxv_.{19}"
6 result = re.search(dirRe, jsonRes)
7 ?
8 wxv = result.group(0)
9 print(wxv)

视频下载:

 1 def getVideo(video_title, url_wxv):
 2 video_path = './videoFiles/' + video_title + ".mp4"
 3 ?
 4 # 页面可下载形式
 5 video_url_temp = "https://mp.weixin.qq.com/mp/videoplayer?action=get_mp_video_play_url&preview=0&__biz=MzI4MzkzMTc3OA==&mid=2247488495&idx=4&vid=" + wxv
 6 response = requests.get(video_url_temp, headers=headers)
 7 content = response.content.decode()
 8 content = json.loads(content)
 9 url_info = content.get("url_info")
10 video_url2 = url_info[0].get("url")
11 print(video_url2)
12 ?
13 # 请求要下载的url地址
14 html = requests.get(video_url2)
15 # content返回的是bytes型也就是二进制的数据。
16 html = html.content
17 with open(video_path, 'wb') as f:
18 f.write(html)

那么所有信息就都完成了,进行code组装。

a、获取公众号信息

b、筛选单篇文章信息

c、获取vid信息

d、拼接视频页面下载URL

e、下载视频,保存

代码实验结果:

.最后,小编想说:我是一名python开发工程师,整理了一套最新的python系统学习教程,想要这些资料的可以关注私信小编“01”即可,希望能对你有所帮助。

相关推荐

EAAPP下载慢、下载安装不了、安装进度条不动的解决方法

EAAPP游戏库拥有庞大数量,及日益丰富的游戏内容,包括一些独立制作的游戏、3A大作等,让大家可以玩到不同类型的游戏。很多玩家都愿意使用EAAPP下载游玩,但是也有部分玩家反映,遇到EAAPP下载慢、...

APEX英雄下载超慢怎么办?不用慌!看这里帮你解决

[海峡网]APEX英雄下载超慢?不用慌!看这里帮你解决Apex英雄是EA新推出的吃鸡游戏,很多玩家都要在ea自己的平台下载游戏。不同于国内的wegame和steam,EA的橘子平台是很难下载的。那么来...

亲测有效:解决EA app打不开/进不去/无法启动游戏

亲测有效:解决EAapp打不开/进不去/无法启动游戏嘿,各位游戏迷!最近听说不少Origin的老玩家都在陆续转战EAAPP,毕竟EAAPP将很快完全接管Origin的位置,所以现在有很多人已经开...

双人成行switch/ns版EA账号注册绑定保姆级教程

...

亲测有效:解决EAAPP注册账号下一步没反应|EAAPP注册不了

亲测有效:解决EAAPP注册账号下一步没反应|EAAPP注册不了有没有碰到注册EAAPP新账号时,死按“下一步”按钮却毫无反应的烦恼?别愁,我这就给你拿出三招解决法宝!亲测有效:解决EAAPP注册账号...

EA高级应用-顺势加仓

我的EA加仓方式分为:顺势加仓、逆势加仓、形态加仓三种,今天说一下顺势加仓的用法。一般顺势加仓用在行情波动比较大的时候。比如一些数据发布,或是某国财政部长或领导人讲话,这些时候行情都会有非常大的波动,...

origin平台加载不出游戏怎么解决?只需删除这两个文件夹

EA这家公司做游戏还是挺用心的,然而它的游戏平台做得实在是垃圾,跟育碧的Uplay平台比起来提鞋都不配,要不是《战地1》只能在这个平台上玩,我是绝对不会用origin这个垃圾平台的。origin平台下...

EA平台更新慢、更新不了有效解决方法分享

EA(ElectronicArts),作为电子游戏行业的巨擘,以其多样化的游戏库和创新技术深受全球玩家的喜爱。从《FIFA》系列的真实足球竞技,到《Apex英雄》的快节奏大逃杀,再到《模拟人生》的无...

ea下载慢怎么办 提升下载速度必看

ea下载慢怎么办提升下载速度必看嘿,铁子们,你们有没有碰到EA游戏下载如同乌龟爬行的情况?好不容易盼到了《战地》新篇章,或是想要再次体验《模拟人生》的那些欢乐时光,谁曾想下载进度条却像蜗牛一样慢慢爬...

怎么用EA下载apex英雄?EA下载教程 EA APP下载apex英雄教程

Apex英雄s16已经更新完毕,这是EA的游戏,在推出后受到很多玩家的喜爱,目前已经有很多玩家都在游玩。在新赛季中,官方为玩家们带来射击场和迎新赛等更新内容,都十分有趣,吸引来不少原本没有入坑的玩家。...

EAAPP您的凭据不正确或已过期/无法找到您的账户信息解决办法

一晃又是新一年,小伙伴们好久不见啊。不过说起游戏玩家们的老搭档EA,提供给大家的使用体验真的是一言难尽哈,非常非常不OK。这又是新年了,一上去就遇到了问题,相信很多朋友应该都遇到过这种情况,比如您的凭...

ea服务器处理已严重超时|服务器连不上的解决方法来了

ea服务器处理已严重超时|...

ea一直显示正在下载内容/一直显示下载中/一直卡在下载的解决办法

EADesktopApp(EAapp)是全球知名游戏开发商ElectronicArts(EA)推出的一款一体化游戏平台,为玩家提供了游戏下载、安装、更新和启动等便捷服务。然而,在实际使用过程中,...

详解:EAAPP怎么改名字 EAAPP更改账号昵称方法

详解:EAAPP怎么改名字EAAPP更改账号昵称方法EA游戏平台作为EA旗下游戏的官方平台,提供了各种类型的游戏,包括体育游戏、射击游戏、竞速游戏、动作冒险游戏等。如果你想在EAAPP上更改账号昵称...

EAplay下载速度太慢/下载卡住/一直显示正在下载内容解决办法

EAPlay(现改名为EAApp)是ElectronicArts公司推出的一款数字发行平台,提供了丰富的EA旗下游戏下载、购买与更新服务。然而,不少用户在使用EAPlay的过程中可能会遇到下载...