main_schedule.py 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. """
  2. @author: luojunhui
  3. """
  4. # encoding: utf-8
  5. """
  6. @author: luojunhui
  7. """
  8. import time
  9. import requests
  10. class AskForInfo:
  11. """
  12. Ask user to enter their info
  13. """
  14. def __init__(self, params):
  15. self.params = params
  16. self.base_url = "http://localhost:8111"
  17. def search_request(self):
  18. """
  19. 请求下载外部视频
  20. :return:
  21. """
  22. url = "{}/title_to_search".format(self.base_url)
  23. body = {
  24. "title": self.params["title"],
  25. "content": self.params['content'],
  26. "ghId": self.params["ghId"]
  27. }
  28. res = requests.post(url, json=body, timeout=120)
  29. return res.json()
  30. def check_out_videos(self, trace_id):
  31. """
  32. :return:
  33. """
  34. url = "{}/out_videos".format(self.base_url)
  35. body = {
  36. "traceId": trace_id
  37. }
  38. res = requests.post(url, json=body, timeout=120)
  39. return res.json()
  40. def ask_for_info(self, res_obj, kt):
  41. """
  42. :param kt:
  43. :param res_obj:
  44. :return:
  45. """
  46. traceId = res_obj["trace_id"]
  47. video_list = res_obj["video_list"]
  48. url = "{}/find_video".format(self.base_url)
  49. body = {
  50. "accountName": self.params['accountName'],
  51. "content": self.params['content'],
  52. "cover": self.params['cover'],
  53. "ghId": self.params['ghId'],
  54. "title": self.params['title'],
  55. "traceId": traceId,
  56. "kimi_title": kt,
  57. "videoList": video_list
  58. }
  59. res = requests.post(url, json=body, timeout=120)
  60. return res.json()
  61. def schedule(self):
  62. """
  63. :return:
  64. """
  65. a = time.time()
  66. res = self.search_request()
  67. b = time.time()
  68. print("search_time")
  69. print(b - a)
  70. if res['code'] == 0:
  71. trace_id = res["trace_id"]
  72. kimi_title = res['kimi_title']
  73. c = time.time()
  74. res_obj = self.check_out_videos(trace_id=trace_id)
  75. d = time.time()
  76. print("recall time")
  77. print(d - c)
  78. time.sleep(2)
  79. final_obj = self.ask_for_info(res_obj=res_obj, kt=kimi_title)
  80. e = time.time()
  81. print("ask time")
  82. print(e - d)
  83. return final_obj
  84. elif res['code'] == 1:
  85. return {
  86. "Error": res['message']
  87. }
  88. else:
  89. return {
  90. "Error": "Unknown Error"
  91. }