|
@@ -0,0 +1,84 @@
|
|
|
+import json
|
|
|
+import requests
|
|
|
+
|
|
|
+
|
|
|
+class SphAuthor:
|
|
|
+ def __init__(self, name):
|
|
|
+ self.token = "1678001807"
|
|
|
+ self.cookie = 'ua_id=bw4VuFJr6fAuSkwdAAAAAClaW0m9Aua-6IfHaXU_zpo=; wxuin=95302180931488; mm_lang=zh_CN; RK=kreEMgtMMJ; ptcz=8fd1b267c98a1185bbe6455a081f1264048ee388363ca305d9ef4812892c7900; qq_domain_video_guid_verify=2ba78a5010233582; poc_sid=HOinP2Wj322Ex737kV651Zqy6y8fSprOUUvaegBg; _qimei_q36=; _qimei_h38=9eea33ea92afe8a922333fce03000001317916; pgv_pvid=9056371236; uuid=c2c0f943291da7eff8f6972740e4f894; _clck=3930572231|1|fgk|0; rand_info=CAESILaJJXli7mbr458BaiPXyXMbWTe3TKCzsfFmsXaTOPcU; slave_bizuin=3524986952; data_bizuin=3524986952; bizuin=3524986952; data_ticket=2/3sHr4KYg12+LGHQV6k5K3pJ6S8S4nAYWhKsIhhij/OcGFjUysTrpY75aUZy9M9; slave_sid=a2JpR21wSF9xRmNLU1V1Ylh5U0Ywd1o4MUdyZ3FVZXhfNGUyWXc3dURfbWlpdjFUcUl5elp0RURpWERwTktBb3VDenFsR2hxbHZ2cnRBdjZJSk9oMnRtSV83azFWOG9WbDd5U0h6Q1RkajhxY21CTmxzSFlYZDVjaUhteWozbzRFS3luRzNUUExzVmxkRzhG; slave_user=gh_0d8cf8319a3b; xid=84a3765ddefaf98f144be8b1aafa0d58; _clsk=1xoy7wc|1699512584249|6|1|mp.weixin.qq.com/weheat-agent/payload/record; bizuin=3524986952; data_bizuin=3524986952; data_ticket=2/3sHr4KYg12+LGHQV6k5K3pJ6S8S4nAYWhKsIhhij/OcGFjUysTrpY75aUZy9M9; rand_info=CAESILaJJXli7mbr458BaiPXyXMbWTe3TKCzsfFmsXaTOPcU; slave_bizuin=3524986952; slave_sid=a2JpR21wSF9xRmNLU1V1Ylh5U0Ywd1o4MUdyZ3FVZXhfNGUyWXc3dURfbWlpdjFUcUl5elp0RURpWERwTktBb3VDenFsR2hxbHZ2cnRBdjZJSk9oMnRtSV83azFWOG9WbDd5U0h6Q1RkajhxY21CTmxzSFlYZDVjaUhteWozbzRFS3luRzNUUExzVmxkRzhG; slave_user=gh_0d8cf8319a3b'
|
|
|
+ self.name = name
|
|
|
+
|
|
|
+ def get_user_id(self):
|
|
|
+ url = "https://mp.weixin.qq.com/cgi-bin/videosnap"
|
|
|
+ params = {
|
|
|
+ "action": "search",
|
|
|
+ "scene": "1",
|
|
|
+ "buffer": "",
|
|
|
+ "query": self.name,
|
|
|
+ "count": "21",
|
|
|
+ "token": self.token,
|
|
|
+ "lang": "zh_CN",
|
|
|
+ "f": "json",
|
|
|
+ "ajax": "1"
|
|
|
+ }
|
|
|
+ headers = {
|
|
|
+ 'authority': 'mp.weixin.qq.com',
|
|
|
+ 'accept': '*/*',
|
|
|
+ 'accept-language': 'en,zh-CN;q=0.9,zh;q=0.8',
|
|
|
+ 'cookie': self.cookie,
|
|
|
+ 'referer': 'https://mp.weixin.qq.com/cgi-bin/appmsg?t=media/appmsg_edit_v2&action=edit&isNew=1&type=77&createType=0&token=1678001807&lang=zh_CN',
|
|
|
+ 'sec-ch-ua': '"Google Chrome";v="119", "Chromium";v="119", "Not?A_Brand";v="24"',
|
|
|
+ 'sec-ch-ua-mobile': '?0',
|
|
|
+ 'sec-ch-ua-platform': '"macOS"',
|
|
|
+ 'sec-fetch-dest': 'empty',
|
|
|
+ 'sec-fetch-mode': 'cors',
|
|
|
+ 'sec-fetch-site': 'same-origin',
|
|
|
+ 'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36',
|
|
|
+ 'x-requested-with': 'XMLHttpRequest'
|
|
|
+ }
|
|
|
+ response = requests.request("GET", url, headers=headers, params=params)
|
|
|
+ user_list = response.json()
|
|
|
+ target_user = user_list['acct_list'][0] # 可以优化
|
|
|
+ return target_user
|
|
|
+
|
|
|
+ def get_video_list(self):
|
|
|
+ user_info = self.get_user_id()
|
|
|
+ url = "https://mp.weixin.qq.com/cgi-bin/videosnap"
|
|
|
+ params = {
|
|
|
+ "action": "get_feed_list",
|
|
|
+ "username": user_info['username'],
|
|
|
+ "buffer": "",
|
|
|
+ "count": "15",
|
|
|
+ "scene": "1",
|
|
|
+ "token": self.token,
|
|
|
+ "lang": "zh_CN",
|
|
|
+ "f": "json",
|
|
|
+ "ajax": "1"
|
|
|
+ }
|
|
|
+ headers = {
|
|
|
+ 'authority': 'mp.weixin.qq.com',
|
|
|
+ 'accept': '*/*',
|
|
|
+ 'accept-language': 'en,zh-CN;q=0.9,zh;q=0.8',
|
|
|
+ 'cookie': self.cookie,
|
|
|
+ 'referer': 'https://mp.weixin.qq.com/cgi-bin/appmsg?t=media/appmsg_edit_v2&action=edit&isNew=1&type=77&createType=0&token=1678001807&lang=zh_CN',
|
|
|
+ 'sec-ch-ua': '"Google Chrome";v="119", "Chromium";v="119", "Not?A_Brand";v="24"',
|
|
|
+ 'sec-ch-ua-mobile': '?0',
|
|
|
+ 'sec-ch-ua-platform': '"macOS"',
|
|
|
+ 'sec-fetch-dest': 'empty',
|
|
|
+ 'sec-fetch-mode': 'cors',
|
|
|
+ 'sec-fetch-site': 'same-origin',
|
|
|
+ 'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36',
|
|
|
+ 'x-requested-with': 'XMLHttpRequest'
|
|
|
+ }
|
|
|
+
|
|
|
+ response = requests.request("GET", url, headers=headers, params=params)
|
|
|
+ video_list = response.json()
|
|
|
+ # print(json.dumps(video_list, ensure_ascii=False, indent=4))
|
|
|
+ # print(len(video_list['list']))
|
|
|
+ for obj in video_list['list']:
|
|
|
+ print(obj['desc'])
|
|
|
+
|
|
|
+
|
|
|
+if __name__ == "__main__":
|
|
|
+ Sph = SphAuthor("心煤")
|
|
|
+ Sph.get_video_list()
|