watch_novel.py 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135
  1. """
  2. 头条极速版
  3. 看小说赚钱
  4. """
  5. import os
  6. from strategy.rpa_enum import media_type
  7. from tools import loggerKit
  8. from func.action_tool import \
  9. read_pic_base64_string, \
  10. make_task_click_widget, \
  11. make_task_click_image, \
  12. check_result_status, \
  13. make_task_continual_swipe_screen, \
  14. make_task_stop_app
  15. # 头条app的id
  16. toutiao_package_name = "com.ss.android.article.lite"
  17. # 头条app的版本
  18. toutiao_app_version = "9.7.0.0"
  19. def watch_novel_task(task_id, data):
  20. start_pages = 0
  21. max_pages = 50
  22. task_id = str(task_id)
  23. # 获取设备id
  24. device_id = data.get("deviceID")
  25. loggerKit.info("[头条极速版][看小说赚钱任务]请求信息:{0}{1}'.format(task_id,data))")
  26. """
  27. 检查上一步执行结果状态
  28. """
  29. result_status = check_result_status(
  30. task_id=task_id,
  31. data=data,
  32. target_app=media_type.toutiao.value,
  33. target_version=toutiao_app_version,
  34. package_name=toutiao_package_name
  35. )
  36. if result_status is not None:
  37. return result_status
  38. """
  39. 首页点击任务
  40. """
  41. step_index = 1
  42. action_dict = make_task_click_widget(
  43. data=data,
  44. step_index=step_index,
  45. target_app=media_type.toutiao.value,
  46. target_version=toutiao_app_version,
  47. package_name=toutiao_package_name,
  48. control_id='android:id/tabs',
  49. item_index=2,
  50. sleep_time=8
  51. )
  52. if action_dict is not None:
  53. # 返回新生成的操作json字典
  54. return action_dict
  55. """
  56. 点击看小说赚钱入口
  57. """
  58. step_index += 1
  59. # 获取图片base64字符串
  60. current_dir = os.path.dirname(os.path.abspath(__file__))
  61. image_path = os.path.join(current_dir, "pic/toutiao_watch_novel.png")
  62. encoded_string = read_pic_base64_string(image_path)
  63. action_dict = make_task_click_image(
  64. data=data,
  65. step_index=step_index,
  66. target_app=media_type.toutiao.value,
  67. target_version=toutiao_app_version,
  68. package_name=toutiao_package_name,
  69. pic_base64=encoded_string,
  70. sleep_time=4
  71. )
  72. if action_dict is not None:
  73. # 返回新生成的操作json字典
  74. return action_dict
  75. """
  76. 点击某个小说
  77. """
  78. step_index += 1
  79. # 获取图片base64字符串
  80. current_dir = os.path.dirname(os.path.abspath(__file__))
  81. image_path = os.path.join(current_dir, "pic/toutiao_watch_novel_redu.png")
  82. encoded_string = read_pic_base64_string(image_path)
  83. action_dict = make_task_click_image(
  84. data=data,
  85. step_index=step_index,
  86. target_app=media_type.toutiao.value,
  87. target_version=toutiao_app_version,
  88. package_name=toutiao_package_name,
  89. pic_base64=encoded_string,
  90. sleep_time=4
  91. )
  92. if action_dict is not None:
  93. # 返回新生成的操作json字典
  94. return action_dict
  95. """
  96. 持续向右滑动屏幕
  97. """
  98. step_index += 1
  99. action_dict = make_task_continual_swipe_screen(
  100. data=data,
  101. step_index=step_index,
  102. target_app=media_type.toutiao.value,
  103. target_version=toutiao_app_version,
  104. package_name=toutiao_package_name,
  105. direction="right",
  106. is_need_loop=True,
  107. loop_count=100,
  108. sleep_time=5
  109. )
  110. if action_dict is not None:
  111. # 返回新生成的操作json字典
  112. return action_dict
  113. """
  114. 关闭APP
  115. """
  116. step_index += 1
  117. return make_task_stop_app(
  118. task_id,
  119. data,
  120. step_index,
  121. target_app=media_type.toutiao.value,
  122. target_version=toutiao_app_version,
  123. package_name=toutiao_package_name
  124. )