video_processing.py 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. import requests
  2. import json
  3. from common.aliyun_log import AliyunLogger
  4. from common.redis import get_video_data, install_video_data
  5. class VideoProcessing:
  6. def get_ai_data(self, video_path):
  7. url = "http://8.219.186.16:8080/process_video/"
  8. payload = json.dumps( {
  9. "video_path": video_path
  10. } )
  11. headers = {
  12. 'Content-Type': 'application/json'
  13. }
  14. response = requests.request( "POST", url, headers=headers, data=payload )
  15. try:
  16. response = response.json()
  17. result = response['result']
  18. cleaned_string = result.replace( "```json", "" ).replace( "```", "" ).strip()
  19. json_data = json.loads( cleaned_string )
  20. print( json_data )
  21. return json_data
  22. except Exception as e:
  23. print(f"视频请求异常:{e}")
  24. return None
  25. def get_video(self):
  26. video_data = get_video_data()
  27. # 解码为字符串
  28. data_str = video_data.decode( 'utf-8' )
  29. # 解析为 JSON 对象
  30. data_json = json.loads( data_str )
  31. video_id = data_json['video_id']
  32. title = data_json['title']
  33. video_path = data_json['video_path']
  34. data = self.get_ai_data(video_path)
  35. AliyunLogger.logging(str(video_id), title, video_path, data)
  36. print("写入日志成功")
  37. if __name__ == '__main__':
  38. video_processor = VideoProcessing()
  39. video_processor.get_video()