Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 7888f76

Browse files
committed
no message
1 parent 4f6879e commit 7888f76

File tree

1 file changed

+136
-0
lines changed

1 file changed

+136
-0
lines changed
Lines changed: 136 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,136 @@
1+
import time
2+
3+
from appium import webdriver
4+
from selenium.common.exceptions import NoSuchElementException
5+
6+
desired_capabilities = {
7+
'platformName': 'Android', # 操作系统
8+
'deviceName': '2a254a02', # 设备 ID
9+
'platformVersion': '10.0.10', # 设备版本号,在手机设置中查看
10+
'appPackage': 'com.tencent.mm', # app 包名
11+
'appActivity': 'com.tencent.mm.ui.LauncherUI', # app 启动时主 Activity
12+
'noReset': True # 是否保留 session 信息 避免重新登录
13+
}
14+
15+
driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_capabilities)
16+
print('微信启动')
17+
18+
19+
20+
# 所有好友
21+
friends = ['宝贝']
22+
def get_friends():
23+
# 好友id
24+
address_list = driver.find_elements_by_id('com.tencent.mm:id/dy5')
25+
for address in address_list:
26+
# 昵称
27+
friend = address.get_attribute('content-desc')
28+
# 过滤掉自己、微信团队、文件夹传输助手
29+
if friend != '某某白米饭' and friend != '微信团队' and friend != '文件夹传输助手':
30+
friends.append(friend)
31+
# 获取到最后一个好友返回
32+
if friend == '🔥Jiuki🔥':
33+
return
34+
# 向上滚动获取好友,获取好友会重复,最后结果需过滤
35+
driver.swipe(100, 1000, 100, 500)
36+
# 递归循环得到所有好友
37+
get_friends()
38+
pass
39+
40+
# 判断是否被删
41+
def is_del(f):
42+
43+
time.sleep(2)
44+
driver.find_element_by_id('com.tencent.mm:id/cn1').click()
45+
time.sleep(2)
46+
# 在搜索框输入搜索信息
47+
driver.find_element_by_id('com.tencent.mm:id/bhn').send_keys(f)
48+
time.sleep(2)
49+
#点击好友
50+
driver.find_element_by_id('com.tencent.mm:id/tm').click()
51+
time.sleep(2)
52+
# 转账操作 + 号
53+
driver.find_element_by_id('com.tencent.mm:id/aks').click()
54+
time.sleep(2)
55+
# 转账按钮
56+
driver.find_elements_by_id('com.tencent.mm:id/pa')[5].click()
57+
time.sleep(2)
58+
# 数字 1
59+
driver.find_element_by_id('com.tencent.mm:id/cx_').click()
60+
time.sleep(1)
61+
# 付款界面转账按钮
62+
driver.find_element_by_id('com.tencent.mm:id/cxi').click()
63+
time.sleep(2)
64+
65+
# 判断是否被删
66+
is_exist = is_element('com.tencent.mm:id/dos')
67+
if is_exist:
68+
# 不能转账就点击确定按钮
69+
driver.find_element_by_id('com.tencent.mm:id/doz').click()
70+
71+
time.sleep(2)
72+
else:
73+
# 可以转账就后退
74+
driver.press_keycode(4)
75+
76+
# 后退到 搜索页面
77+
driver.press_keycode(4)
78+
driver.press_keycode(4)
79+
driver.press_keycode(4)
80+
driver.press_keycode(4)
81+
# 清空文本框
82+
driver.find_element_by_id('com.tencent.mm:id/bhn').send_keys('')
83+
84+
return is_exist
85+
86+
87+
# 删除好友
88+
def del_friend(friend):
89+
time.sleep(2)
90+
driver.find_element_by_id('com.tencent.mm:id/cn1').click()
91+
time.sleep(2)
92+
driver.find_element_by_id('com.tencent.mm:id/bhn').send_keys(friend)
93+
time.sleep(2)
94+
#点击好友
95+
driver.find_element_by_id('com.tencent.mm:id/tm').click()
96+
time.sleep(2)
97+
# 右上角...
98+
driver.find_element_by_id('com.tencent.mm:id/cj').click()
99+
time.sleep(2)
100+
# 头像
101+
driver.find_element_by_id('com.tencent.mm:id/f3y').click()
102+
time.sleep(2)
103+
# 右上角...
104+
driver.find_element_by_id('com.tencent.mm:id/cj').click()
105+
time.sleep(2)
106+
# 删除按钮
107+
driver.find_element_by_id('com.tencent.mm:id/g6f').click()
108+
time.sleep(2)
109+
# 选中删除
110+
driver.find_element_by_id('com.tencent.mm:id/doz').click()
111+
112+
def is_element(id):
113+
flag = None
114+
try:
115+
driver.find_element_by_id(id)
116+
flag = True
117+
except NoSuchElementException:
118+
flag = False
119+
finally:
120+
return flag
121+
122+
time.sleep(8)
123+
driver.find_elements_by_id('com.tencent.mm:id/cn_')[1].click()
124+
125+
time.sleep(3)
126+
get_friends()
127+
friends = list(set(friends))
128+
129+
del_friends = []
130+
for f in friends:
131+
is_exist = is_del(f)
132+
if is_exist:
133+
del_friends.append(f)
134+
135+
for f in del_friends:
136+
del_friend(f)

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /