首页 > 上网技巧 > 电脑小技巧 > python如何自动批量添加微信好友并修改备注

python如何自动批量添加微信好友并修改备注

时间:2020-01-01 19:01 作者:QQ地带 我要评论

有时候因为工作需要,不得不在微信上添加一堆好友,既不想花钱购买一些工具,又想跟自己的业务深度结合,怎么办呢,这时候不妨借鉴一下自动化测试的思路,利用appium框架(appium是一个移动端的自动化框架,可用于测试原生应用,移动网页应用和混合型应用,且是跨平台的),让工作更有效率。
 
一、环境搭建
 
安装Node.js
安装JDK,及配置环境变量
安装Android SDK,及配置环境变量
安装Appium桌面版本
安装Python/Java(选自己习惯的就行)
关于过程,就不在此赘述了,网上有很多很详细的教程
 
 
 
 
二、Python代码实现
 
基本思路:启动微信app,模拟点击搜索按钮,输入预先准备好的手机号,判断跟该手机号的好友关系,如果是好友则跳过,如果不是好友则添加好友,添加的过程中,如果需要发送验证申请,则输入准备好的文案话术,并修改好友备注,最后模拟点击发送。
 
# -*- coding: utf-8 -*-
from appium import webdriver
from time import sleep
 
def get_data(mobile,words,note):
    #设置模拟器及APP参数
    desired_caps = {}
    desired_caps['platformName'] = 'Android'
    desired_caps['deviceName'] = 'ALP-AL00'
    desired_caps['appPackage'] = 'com.tencent.mm'
    desired_caps['appActivity'] = '.ui.LauncherUI'
    desired_caps['noReset'] = True
    desired_caps['autoGrantPermission'] = True
    desired_caps['unicodeKeyboard'] = True
    driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)
    sleep(3)
 
    #选择并点击查找按钮
    driver.find_element_by_id("com.tencent.mm:id/qi").click()
    #输入手机号
    driver.find_element_by_id("com.tencent.mm:id/li").send_keys(str(mobile))
    #查找当前页面是否有联系人模块,若无则该手机号待添加,若有则已是微信好友
    views = driver.find_elements_by_id("com.tencent.mm:id/ra")
    if len(views) == 0:
        #选择并点击查找手机号菜单
        driver.find_element_by_id("com.tencent.mm:id/c2c").click()
        #查找当前页是否有提示弹窗,若有则用户不存在(可能是不允许被手机号搜到),若无则用户待添加。
        box = driver.find_elements_by_id("com.tencent.mm:id/dd9")
        if len(box) == 0:
            #选择并点击"添加到通讯录"
            driver.find_element_by_id("com.tencent.mm:id/cw").click()
            msg = driver.find_elements_by_id("com.tencent.mm:id/cw")
            if len(msg) == 1:
                print(str(mobile) + "用户已添加成功")
            else:
                #编辑验证申请话术
                driver.find_element_by_id("com.tencent.mm:id/ea4").clear()
                driver.find_element_by_id("com.tencent.mm:id/ea4").send_keys(str(words))
                #编辑好友备注
                driver.find_element_by_id("com.tencent.mm:id/ea8").send_keys(str(note))
                #点击发送验证申请按钮
                driver.find_element_by_id("com.tencent.mm:id/kz").click()
                print(str(mobile) + "等待用户验证")
        else:
            print(str(mobile) + "用户不存在")
    else:
        print(str(mobile) + "已是微信好友")
 
mobiles = [186xxxxxxxx,187xxxxxxxx,152xxxxxxxx]
words = "您好,我是侯永胜:)"
 
for mobile in mobiles:
    zh_name = '小明'
    account_id = '19321'
    business_id = '818'
    note = '_' + zh_name + '_' + business_id + '_' + account_id
    get_data(mobile,words,note)
 
 
上述只是一个简单的应用场景,还可以横向和纵向的进行拓展,总之appium很强大,值得探索,但别用来薅羊毛哈:)

标签: 微信 Python
顶一下
(0)
0%
踩一下
(0)
0%

Google提供的广告