您好,登錄后才能下訂單哦!
我之前自己維護(hù)了一個(gè)公眾號(hào),但因?yàn)閭€(gè)人關(guān)系很久沒(méi)有更新了,今天上來(lái)緬懷一下,卻偶然發(fā)現(xiàn)了一個(gè)獲取微信公眾號(hào)文章的方法。
之前獲取方法有很多,通過(guò)搜狗、清博、網(wǎng)頁(yè)端、客戶(hù)端等等都還可以,這個(gè)可能并沒(méi)有其他的優(yōu)秀,但是操作簡(jiǎn)單,很容易理解。
so、 首先需要有一個(gè)微信公眾平臺(tái)的賬號(hào)
微信公眾平臺(tái):https://mp.weixin.qq.com/
登陸之后,進(jìn)入首頁(yè),點(diǎn)擊新建群發(fā)。
選擇自建圖文:
似乎像是公眾號(hào)運(yùn)營(yíng)教學(xué)了
進(jìn)入編輯頁(yè)面之后,點(diǎn)擊超鏈接
彈出選擇框,我們?cè)诳蛑休斎雽?duì)應(yīng)的公眾號(hào)名字,即可出現(xiàn)對(duì)應(yīng)的文章列表
是不是很驚奇,可以打開(kāi)控制臺(tái),查看一下請(qǐng)求的接口
打開(kāi)response,里面就是我們需要的文章鏈接
確定了數(shù)據(jù)以后,我們需要分析一下這個(gè)接口。
感覺(jué)很簡(jiǎn)單,一個(gè)GET請(qǐng)求,攜帶一些參數(shù)。
fakeid是公眾號(hào)的獨(dú)有ID,所以想通過(guò)名字直接獲取文章列表,還需要先獲取一下fakeid。
當(dāng)我們輸入公眾號(hào)名字后,點(diǎn)擊搜索??梢钥吹接|發(fā)了搜索接口,返回了fakeid。
這個(gè)接口所需參數(shù)也不多。
接下來(lái),我們可以用代碼來(lái)模擬以上的操作了。
但是還需要使用現(xiàn)有Cookie避免登陸。
目前Cookie的有效期,我還沒(méi)有測(cè)試??赡苄枰皶r(shí)更新Cookie。
測(cè)試代碼:
import requests import json Cookie = '請(qǐng)換上自己的Cookie,獲取方法:直接復(fù)制下來(lái)' url = "https://mp.weixin.qq.com/cgi-bin/appmsg" headers = { "Cookie": Cookie, "User-Agent": 'Mozilla/5.0 (Linux; Android 10; YAL-AL00 Build/HUAWEIYAL-AL00) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/70.0.3538.64 HuaweiBrowser/10.0.1.335 Mobile Safari/537.36' } keyword = 'pythonlx' # 公眾號(hào)名字:可自定義 token = '你的token' # 獲取方法:如上述 直接復(fù)制下來(lái) search_url = 'https://mp.weixin.qq.com/cgi-bin/searchbiz?action=search_biz&begin=0&count=5&query={}&token={}&lang=zh_CN&f=json&ajax=1'.format(keyword,token) doc = requests.get(search_url,headers=headers).text jstext = json.loads(doc) fakeid = jstext['list'][0]['fakeid'] data = { "token": token, "lang": "zh_CN", "f": "json", "ajax": "1", "action": "list_ex", "begin": 0, "count": "5", "query": "", "fakeid": fakeid, "type": "9", } json_test = requests.get(url, headers=headers, params=data).text json_test = json.loads(json_test) print(json_test)
這樣就能獲取最新的10篇文章了,如果想要獲取更多的歷史文章,可以修改data中的"begin"參數(shù),0是第一頁(yè),5是第二頁(yè),10是第三頁(yè)(以此類(lèi)推)
但是如果想要大規(guī)模抓取的話:
請(qǐng)給自己安排一個(gè)穩(wěn)定的代理,降低爬蟲(chóng)的速度,準(zhǔn)備多個(gè)賬號(hào),來(lái)減少被封禁的可能性。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持億速云。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。