因为某种原因,需要在微信上添加大量的好友,打开微信,添加,添加好友,搜索,输入微信号,搜索,添加备注。
一阵操作下来,黄花菜都凉了,我看着我都着急,这可是有10000多的好友呀!!!
假如平均每5分钟添加一个好友,就需要50000分钟,833小时,假如每天算8小时,不停的添加好友。104天,每月30天,大概3个月就可以添加完成,到时候,我想你已经吐了。
想想,3个月时间,我们可以做什么,我们可以提升一个王者段位,可以外出旅行,可以多陪陪家人。
而现在,你距离你的梦想又救了一步,只需要一个程序,你就可以搞定手动添加好友的尴尬。让他自己动。
首先,我们来准备环境!
1.jdk
2.sdk
3.appium
4.node.js
5.一部手机,当然是智能手机。
6.一条数据线。
相关环境后期会做补充,这次主要是程序。
好,那下面看代码:
from appium import webdriver
import time
import xlrd
def is_content_Appeared(driver,content):
try:
driver.find_element_by_name(content)
status=True
except:
status = False
return status
desired_caps = {
‘platformName’: ‘Android’,
‘deviceName’: ‘232342232343’,
‘platformVersion’: ‘7.0’,#将要测试app的安装包放到自己电脑上执行安装或启动,如果不是从安装开始,则不是必填项,可以由下面红色的两句直接启动
‘appPackage’: ‘com.tencent.mm’, #红色部分如何获取下面讲解
‘appActivity’: ‘com.tencent.mm.ui.LauncherUI’,
‘unicodeKeyboard’: ‘True’, #此两行是为了解决字符输入不正确的问题
‘resetKeyboard’: ‘True’, #运行完成后重置软键盘的状态
‘autoWebview’:’True’,
‘recreateChromeDriverSessions’:’True’,
‘automationName’:’Appium’
}
j,y=1,1000
list=[]
driver = webdriver.Remote(‘http://127.0.0.1:4723/wd/hub’, desired_caps)
for x in range(1,5):
try:
time.sleep(3)
driver.find_element_by_id(“com.tencent.mm:id/g_”).click()
time.sleep(3)
driver.find_element_by_name(“添加朋友”).click()
driver.find_element_by_id(“com.tencent.mm:id/ht”).click()
xlsfile = r’C:\好友.xls’
book = xlrd.open_workbook(xlsfile) # 获得excel的book对象
sheet_name = book.sheet_names()[0] # 获得指定索引的sheet名字
sheet = book.sheet_by_name(“Sheet1”)
for i in range(j,y):
try:
time.sleep(20)
cell_value = int(sheet.cell_value(i, 2))#获取电话号码
print(cell_value)
driver.find_element_by_id(“com.tencent.mm:id/ht”).send_keys(cell_value)#输入电话号码
time.sleep(3)
driver.find_element_by_id(“com.tencent.mm:id/ayp”).click()
time.sleep(3)
if is_content_Appeared(driver,”添加到通讯录” )==True:
if is_content_Appeared(driver,”设置备注和标签”)==True:
driver.find_element_by_name(“设置备注和标签”).click()
time.sleep(3)
driver.find_element_by_name(“添加标签对联系人进行分类”).click()
time.sleep(3)
cell_value1 = sheet.cell_value(i, 3) # 获取标签名
driver.find_element_by_name(“添加标签”).send_keys(cell_value1)
time.sleep(3)
driver.find_element_by_name(“保存”).click()
time.sleep(3)
driver.find_element_by_id(“com.tencent.mm:id/hy”).click()
time.sleep(3)
driver.find_element_by_name(“添加到通讯录”).click()
time.sleep(3)
driver.find_element_by_id(“com.tencent.mm:id/d0n”).clear()#清除备注名
time.sleep(3)
ell_value2 = sheet.cell_value(i, 0)
ell_value3 = sheet.cell_value(i, 1)
driver.find_element_by_id(“com.tencent.mm:id/d0n”).send_keys(ell_value2+”(“+ell_value3+”)”)#输入被备注名
time.sleep(3)
driver.find_element_by_name(“发送”).click()
time.sleep(3)
print(“成功发送验证消息!”)
driver.find_element_by_name(“返回”).click()
time.sleep(3)
else:
driver.find_element_by_name(“添加到通讯录”).click()
time.sleep(3)
driver.find_element_by_id(“com.tencent.mm:id/d0n”).clear() # 清除备注名
time.sleep(3)
ell_value2 = sheet.cell_value(i, 0)
ell_value3 = sheet.cell_value(i, 1)
driver.find_element_by_id(“com.tencent.mm:id/d0n”).send_keys(
ell_value2 + “(” + ell_value3 + “)”) # 输入被备注名
time.sleep(3)
driver.find_element_by_name(“发送”).click()
time.sleep(3)
print(“成功发送验证消息!”)
driver.find_element_by_name(“返回”).click()
time.sleep(3)
elif is_content_Appeared(driver,”该用户不存在”)==True:
print(“该用户不存在”)
driver.find_element_by_id(“com.tencent.mm:id/ht”).clear()
time.sleep(3)
elif is_content_Appeared(driver,”发消息”)==True:
print(“该用户已经添加为好友”)
driver.find_element_by_name(“返回”).click()
time.sleep(3)
elif is_content_Appeared(driver,”操作过于频繁,请稍后再试”)==True:
print(“操作过于频繁,今天可能不能再添加好友,程序退出”)
driver.quit()
break
else:
driver.save_screenshot(“D:\\app”+i+”.png”)
print(“其他情况”)
except Exception as e:
j=i
driver.quit()
time.sleep(3)
driver = webdriver.Remote(‘http://127.0.0.1:4723/wd/hub’, desired_caps)
continue
except Exception as e:
list.append(e)
driver.quit()
time.sleep(3)
driver = webdriver.Remote(‘http://127.0.0.1:4723/wd/hub’, desired_caps)
continue
break
driver.quit()
了解更多,欢迎关注公众号,获取更多源代码。
获取相关自动添加好友软件,微信公众号,回复 “自动加好友” 获取网盘链接。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/111428.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...