shipinhao_author.py 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. import os
  2. import sys
  3. import time
  4. import requests
  5. import json
  6. sys.path.append(os.getcwd())
  7. from common import Oss, Common
  8. from common.pq_utility import PQ
  9. from common.url_manage import urlManage
  10. class shipinhaoVdieo():
  11. @classmethod
  12. def get_videoList(cls, vx_message, channel):
  13. data_link = vx_message[1]
  14. data_link = json.loads(data_link)
  15. nickname = data_link.get('nickname', '')
  16. title = data_link.get('title', '')
  17. Common.logger().info(f'渠道:{channel},用户名:{title}, 标题:{title}')
  18. if title == '':
  19. return "标题为空"
  20. video_url = ''
  21. for i in range(3):
  22. time.sleep(1)
  23. url = "http://61.48.133.26:30001/SearchContentFristPageMediaInfo"
  24. payload = json.dumps({
  25. "content": title,
  26. "show_detail": "1"
  27. })
  28. headers = {
  29. 'Content-Type': 'application/json'
  30. }
  31. response = requests.request("POST", url, headers=headers, data=payload)
  32. data_list = response.json()
  33. list = data_list.get('data', [])
  34. sub_boxes = list[0].get('subBoxes', [])
  35. for sub_boxe in sub_boxes:
  36. name_title = sub_boxe["items"][0].get('source',[])["title"]
  37. if name_title == nickname:
  38. video_url = sub_boxe["items"][0]['videoUrl']
  39. break
  40. if video_url == '':
  41. return "无法搜索到视频"
  42. # 随机生成视频oss_id
  43. video_id = urlManage.random_id()
  44. oss_object_key = Oss.video_url_upload_oss(video_url, video_id)
  45. Common.logger().info(f'上传OSS成功')
  46. oss_object_key.get("status")
  47. oss_object_key = oss_object_key.get("oss_object_key")
  48. Common.logger().info(f'准备发送站内参数:{oss_object_key},{title},{vx_message[3]}')
  49. piaoquantv = PQ.insert_piaoquantv(oss_object_key, title, vx_message[3])
  50. if piaoquantv == False:
  51. return "视频发送到站内失败"