click_share_video.py 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. # -*- coding: utf-8 -*-
  2. # @Author: wangkun
  3. # @Time: 2022/9/1
  4. import os
  5. import sys
  6. import time
  7. import atomacos
  8. from appium import webdriver
  9. from selenium.webdriver.common.by import By
  10. sys.path.append(os.getcwd())
  11. from crawler_shipinhao.main.common import Common
  12. # from main.common import Common
  13. class Click:
  14. @classmethod
  15. def click_video(cls, log_type, video_title):
  16. Common.logger(log_type).info('启动"微信"')
  17. desired_caps = {'app': r"C:\Program Files (x86)\Tencent\WeChat\WeChat.exe"}
  18. driver = webdriver.Remote(
  19. command_executor='http://127.0.0.1:4723',
  20. desired_capabilities=desired_caps)
  21. driver.implicitly_wait(10)
  22. Common.logger(log_type).info('点击"爬虫群"')
  23. driver.find_element(By.NAME, '爬虫群').click()
  24. Common.logger(log_type).info('点击视频:{}', video_title)
  25. driver.find_element(By.NAME, video_title).click()
  26. time.sleep(5)
  27. driver.quit()
  28. @classmethod
  29. def click_video_mac(cls, log_type, video_title):
  30. bundle_id = "com.tencent.xinWeChat"
  31. # 启动应用
  32. atomacos.launchAppByBundleId(bundle_id)
  33. atomator = atomacos.getAppRefByBundleId(bundle_id)
  34. time.sleep(3)
  35. # 获取当前窗口
  36. wx = atomator.windows()[0]
  37. print(wx)
  38. # # 获取群:爬虫群
  39. # msg_windown = wx.findFirstR(AXRole="AXCell", AXParent="爬虫群")
  40. # print(msg_windown)
  41. # msg_windown.Press()
  42. # # 获取位置参数
  43. # msg_windown_position = msg_windown.AXPosition
  44. # msg_windown_size = msg_windown.AXSize
  45. # 注意AXPositon得到的坐标是元素左上角的坐标,需要根据实际大小得到元素中心点坐标
  46. # msg_windown_click = (lt_position[0] + lt_size[0] / 2, lt_position[1] + lt_size[1])
  47. # print(lt_click)
  48. # lt.clickMouseButtonLeft(lt_position)
  49. #
  50. # # 输入内容(输入键盘字符,US_keyboard)
  51. # # s1 = lt.findFirstR(AXRole='AXTextArea', AXRoleDescription='文本输入区')
  52. # s1 = lt.findFirstR(AXRole='AXTextArea', AXLable='搜索')
  53. # s1_p = s1.AXPosition
  54. # s1_s = s1.AXSize
  55. # s1.tripleClickMouse((s1_p[0] + s1_s[0] / 2, s1_p[1] + s1_s[1] / 2))
  56. # s1.sendKeys('公众号')
  57. if __name__ == '__main__':
  58. # Click.click_video('recommend', '意外和明天谁都不知道哪个先来,所以请珍惜眼前人吧!特别是自己的家的男人在工地上干活的!那个条件,还有高危险作业的人们,谁都不是很努力的活着呀…')
  59. Click.click_video_mac('recommend', '国家卫健委:昨日新增本土确诊病例307例!')