querylist采集微信公眾號文章 熊孩子和萌寵搞笑視頻笑聲不斷快樂(lè )常伴
優(yōu)采云 發(fā)布時(shí)間: 2021-01-26 08:40querylist采集微信公眾號文章 熊孩子和萌寵搞笑視頻笑聲不斷快樂(lè )常伴
每天更新視頻:熊孩子的日常生活,日??蓯?ài)的寵物,熊孩子和可愛(ài)的寵物的有趣視頻。笑聲一直很開(kāi)心,總是伴隨著(zhù)!
請允許我強制投放廣告:
因為每個(gè)爬行動(dòng)物的官方帳戶(hù)都屬于他的家人,所以那是一年以前的事情了,現在已經(jīng)改變了,但是主題和名字都改變了。
一個(gè)喜歡小寵物但買(mǎi)不起貓的代碼農民,下班后很高興。您可以注意!
為了確保視頻的安全性并避免丟失,敬請所有者在視頻中添加水印。
一、獲取官方帳戶(hù)信息:標題,摘要,封面,文章URL
步驟:
1、首先自己申請一個(gè)官方帳戶(hù)
2、登錄到他的帳戶(hù),創(chuàng )建一個(gè)新的文章圖形,單擊超鏈接
3、彈出搜索框,搜索所需的正式帳戶(hù),并查看歷史記錄文章
4、通過(guò)數據包捕獲獲取信息并找到請求的URL
通過(guò)查看信息,我們找到了所需的關(guān)鍵內容:標題,摘要,封面和文章URL。確認這是我們需要的URL。通過(guò)單擊下一頁(yè),我們多次獲得該URL,發(fā)現只有random和beginin的參數已更改
因此確定了主要信息URL。
開(kāi)始吧:
事實(shí)證明,我們需要修改的參數是:令牌,隨機,cookie
獲取網(wǎng)址時(shí)可以獲取這兩個(gè)值的來(lái)源
# -*- coding: utf-8 -*-
import re
import requests
import jsonpath
import json
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": "自己獲取信息時(shí)的cookie"
}
def getInfo():
for i in range(80):
# token random 需要要自己的 begin:參數傳入
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))
response = requests.get(url, headers = headers)
jsonRes = response.json()
titleList = jsonpath.jsonpath(jsonRes, "$..title")
coverList = jsonpath.jsonpath(jsonRes, "$..cover")
urlList = jsonpath.jsonpath(jsonRes, "$..link")
# 遍歷 構造可存儲字符串
for index in range(len(titleList)):
title = titleList[index]
cover = coverList[index]
url = urlList[index]
scvStr = "%s,%s, %s,\n" % (title, cover, url)
with open("info.csv", "a+", encoding="gbk", newline='') as f:
f.write(scvStr)
獲得結果(成功):
二、在文章中獲取視頻:實(shí)現批量下載
分析單個(gè)視頻文章后,我找到了此鏈接:
打開(kāi)網(wǎng)頁(yè),找到它是視頻網(wǎng)頁(yè)的下載鏈接:
嘿,似乎有點(diǎn)有趣,我找到了視頻網(wǎng)頁(yè)的純下載鏈接,讓我們開(kāi)始吧。
我在鏈接中找到一個(gè)關(guān)鍵參數vid。我不知道它來(lái)自哪里?
它與獲得的其他信息無(wú)關(guān),因此只能被強制使用。
在順序文章的url請求信息中找到此參數,然后將其獲取。
response = requests.get(url_wxv, headers=headers)
# 我用的是正則,也可以使用xpath
jsonRes = response.text # 匹配:wxv_1105179750743556096
dirRe = r"wxv_.{19}"
result = re.search(dirRe, jsonRes)
wxv = result.group(0)
print(wxv)
視頻下載:
def getVideo(video_title, url_wxv):
video_path = './videoFiles/' + video_title + ".mp4"
# 頁(yè)面可下載形式
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
response = requests.get(video_url_temp, headers=headers)
content = response.content.decode()
content = json.loads(content)
url_info = content.get("url_info")
video_url2 = url_info[0].get("url")
print(video_url2)
# 請求要下載的url地址
html = requests.get(video_url2)
# content返回的是bytes型也就是二進(jìn)制的數據。
html = html.content
with open(video_path, 'wb') as f:
f.write(html)
然后完成所有信息,并執行代碼匯編。
a。獲取官方帳戶(hù)信息
b。過(guò)濾單個(gè)文章信息
c,獲取視頻信息
d。下載拼接視頻頁(yè)面的URL
e。下載視頻并保存
代碼實(shí)驗結果:
獲取正式帳戶(hù):標題,摘要,封面,視頻,
可以說(shuō)您擁有視頻官方帳戶(hù)的所有信息,并且可以復制其中一個(gè)。
危險的動(dòng)作,請不要操作!記得!記得!記??!
要獲取代碼,請回復至官方帳戶(hù):20191210或官方帳戶(hù)代碼