|
@@ -1,4 +1,5 @@
|
|
import random
|
|
import random
|
|
|
|
+import re
|
|
import time
|
|
import time
|
|
import json
|
|
import json
|
|
import requests
|
|
import requests
|
|
@@ -263,27 +264,63 @@ class PQ:
|
|
else:
|
|
else:
|
|
return ''
|
|
return ''
|
|
|
|
|
|
|
|
+ """
|
|
|
|
+ 单点视频重新获取视频链接
|
|
|
|
+ """
|
|
|
|
+ @classmethod
|
|
|
|
+ def get_dd_video_url(cls, wx_msg):
|
|
|
|
+ try:
|
|
|
|
+ url = "http://8.217.190.241:8888/api/wei_xin/msg/callback"
|
|
|
|
+
|
|
|
|
+ # payload = json.loads(wx_msg)
|
|
|
|
+ headers = {
|
|
|
|
+ 'Content-Type': 'application/json'
|
|
|
|
+ }
|
|
|
|
+ response = requests.request("POST", url, headers=headers, data=wx_msg.encode())
|
|
|
|
+ response = response.json()
|
|
|
|
+ url_video = response['video_url']
|
|
|
|
+ return url_video
|
|
|
|
+ except Exception as e:
|
|
|
|
+ print(e)
|
|
|
|
+ return None
|
|
|
|
+
|
|
|
|
|
|
"""
|
|
"""
|
|
票圈站内视频下载
|
|
票圈站内视频下载
|
|
"""
|
|
"""
|
|
@classmethod
|
|
@classmethod
|
|
- def download_video(cls, video_url, video_path_url, video_id):
|
|
|
|
- video = video_path_url + str(video_id) + '.mp4'
|
|
|
|
- try:
|
|
|
|
- for i in range(3):
|
|
|
|
|
|
+ def download_video(cls, video_url, video_path_url, video_id, video, channel_id):
|
|
|
|
+ url_video = video_url
|
|
|
|
+ new_video = video_path_url + str(video_id) + '.mp4'
|
|
|
|
+ for i in range(3):
|
|
|
|
+ try:
|
|
payload = {}
|
|
payload = {}
|
|
headers = {}
|
|
headers = {}
|
|
- response = requests.request("GET", video_url, headers=headers, data=payload)
|
|
|
|
|
|
+ response = requests.request("GET", url_video, headers=headers, data=payload, timeout=5)
|
|
if response.status_code == 200:
|
|
if response.status_code == 200:
|
|
- with open(f"{video}", "wb") as file:
|
|
|
|
|
|
+ with open(f"{new_video}", "wb") as file:
|
|
# 将响应内容写入文件
|
|
# 将响应内容写入文件
|
|
file.write(response.content)
|
|
file.write(response.content)
|
|
time.sleep(5)
|
|
time.sleep(5)
|
|
- return video
|
|
|
|
- return video
|
|
|
|
- except Exception:
|
|
|
|
- return video
|
|
|
|
|
|
+ return new_video
|
|
|
|
+ else:
|
|
|
|
+ if channel_id == '单点视频':
|
|
|
|
+ wx_msg = video['wx_msg']
|
|
|
|
+ if wx_msg:
|
|
|
|
+ url_videos = cls.get_dd_video_url(wx_msg)
|
|
|
|
+ if url_videos:
|
|
|
|
+ url_video = url_videos
|
|
|
|
+ except Exception:
|
|
|
|
+ if channel_id == '单点视频':
|
|
|
|
+ wx_msg = video['wx_msg']
|
|
|
|
+ if wx_msg:
|
|
|
|
+ url_videos = cls.get_dd_video_url(wx_msg)
|
|
|
|
+ if url_videos:
|
|
|
|
+ url_video = url_videos
|
|
|
|
+ if i == 3:
|
|
|
|
+ return new_video
|
|
|
|
+ return new_video
|
|
|
|
+
|
|
|
|
|
|
"""
|
|
"""
|
|
票圈站内视频下载
|
|
票圈站内视频下载
|
|
@@ -308,5 +345,6 @@ class PQ:
|
|
|
|
|
|
if __name__ == '__main__':
|
|
if __name__ == '__main__':
|
|
url= 'http://111.51.148.73/ksc1/55LDHcm2DuGHbBbzIDfqMh-vfVhaCuIXZG0szwmCZj9pXLmq7otQhUyGXtBtc13Rb0C49a4FzRU5xfUaRQb6De46IO6hQBVqzjOkFArRDfTC7u9BThi0Bsa2w6PP_6dg7WQYKxU6ZIbYI2tnLfOXU5Ira-DEZuGDQbgpZstADnGtvLMkOiB6DImlhfgdxWIZ.mp4?tag=1-1724839019-sp-0-lgl7lhkrnt-8937a5c247b0f313&provider=self&ocid=341&clientCacheKey=3x3br4x5z5hew32_bF.mp4&tt=bF&di=6f31a709&bp=10001'
|
|
url= 'http://111.51.148.73/ksc1/55LDHcm2DuGHbBbzIDfqMh-vfVhaCuIXZG0szwmCZj9pXLmq7otQhUyGXtBtc13Rb0C49a4FzRU5xfUaRQb6De46IO6hQBVqzjOkFArRDfTC7u9BThi0Bsa2w6PP_6dg7WQYKxU6ZIbYI2tnLfOXU5Ira-DEZuGDQbgpZstADnGtvLMkOiB6DImlhfgdxWIZ.mp4?tag=1-1724839019-sp-0-lgl7lhkrnt-8937a5c247b0f313&provider=self&ocid=341&clientCacheKey=3x3br4x5z5hew32_bF.mp4&tt=bF&di=6f31a709&bp=10001'
|
|
- a = PQ.download_video(url,'/Users/tzld/Desktop/video_rewriting/path','70100016')
|
|
|
|
|
|
+ video = {"wx_msg": '{"TypeName":"AddMsg","Appid":"wx_GtAew_wmLbsHMbpDe7Hwk","Data":{"MsgId":1176686077,"FromUserName":{"string":"51757111911@chatroom"},"ToUserName":{"string":"wxid_mr9pdsanc99422"},"MsgType":1,"Content":{"string":"wxid_3379403802612:\n6.41 复制打开抖音,看看【Zooey的作品】被一只青蛙问候了?! https://v.douyin.com/ihHknvbV/ w@f.bA YZm:/ 06/05 "},"Status":3,"ImgStatus":1,"ImgBuf":{"iLen":0},"CreateTime":1725343506,"MsgSource":"<msgsource>\n\t<bizflag>0</bizflag>\n\t<pua>1</pua>\n\t<alnode>\n\t\t<cf>3</cf>\n\t\t<inlenlist>86</inlenlist>\n\t</alnode>\n\t<silence>1</silence>\n\t<membercount>4</membercount>\n\t<signature>V1_pVkC6xlw|v1_pVkC6xlw</signature>\n\t<tmp_node>\n\t\t<publisher-id></publisher-id>\n\t</tmp_node>\n</msgsource>\n","NewMsgId":6473116084228305363,"MsgSeq":776685968},"Wxid":"wxid_mr9pdsanc99422"}'}
|
|
|
|
+ a = PQ.download_video(url,'/Users/tzld/Desktop/video_rewriting/path','70100016',video,'单点视频')
|
|
print(a)
|
|
print(a)
|