1. 程式人生 > >微信自動新增好友軟體打包下載

微信自動新增好友軟體打包下載

因為需要新增大量的微信好友,所以專門編寫了一個指令碼來執行。解決了非常大的問題,讓想要新增微信好友的人找到了非常方便的方法。

首先,來說一下解決思路:要識別微信裡面的介面元素,所以要用到與測試有關的東西:app自動化測試。

框架選擇:appium-python-SDK-java

測試行業的人都會或多或少的接觸到這個框架,這個框架廣泛運用在app自動化測試。

具體實現方式,通過指令碼呼叫appium,sdk,adb命令,將命令傳送到手機,執行操作。

下面直接上程式碼:

from appium import webdriver
import time
import xlrd
import os

def is_content_Appeared(content):
    try:
        driver.find_element_by_name(content)
        status=True
    except:
        status = False
    return status
def click_control(name1,name):
    if name1=="ida":
        time.sleep(3)
        driver.find_element_by_accessibility_id(name).click()
    if name1=="name":
        time.sleep(3)
        driver.find_element_by_name(name).click()
    if name1=="id":
        time.sleep(3)
        driver.find_element_by_id(name).click()
    return
# os.system("adb connect 127.0.0.1:62001")
book=xlrd.open_workbook("模板.xls")
sheet_name=book.sheet_names()[0]
sheet = book.sheet_by_name(sheet_name)
nrows = sheet.nrows
desired_caps = {'platformName': 'Android',
                'deviceName': '127.0.0.1:62001',
                'platformVersion': '4.4.2',#將要測試app的安裝包放到自己電腦上執行安裝或啟動,如果不是從安裝開始,則不是必填項,可以由下面紅色的兩句直接啟動
                'appPackage': 'com.tencent.mm', #紅色部分如何獲取下面講解
                'appActivity': 'com.tencent.mm.ui.LauncherUI',
                'unicodeKeyboard': True, #此兩行是為了解決字元輸入不正確的問題
                'resetKeyboard': True, #執行完成後重置軟鍵盤的狀態
                # 'autoWebview':True,
                'recreateChromeDriverSessions':True,
                'automationName':'Appium'}
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)
w=1
for x in range(1,5):
    try:
        time.sleep(5)
        click_control("ida", "更多功能按鈕")
        click_control("name", "新增朋友")
        click_control("name", "微訊號/QQ號/手機號")
        for i in range(w,nrows):
            row = sheet.row_values(i)
            click_control("id","com.tencent.mm:id/hz")#點選搜尋框
            time.sleep(30)
            print(row)
            driver.find_element_by_id("com.tencent.mm:id/hz").send_keys(str(int(row[2])))#輸入電話號碼
            click_control("name","搜尋:"+str(int(row[2])))
            if is_content_Appeared("該使用者不存在")==True:
                driver.find_element_by_id("com.tencent.mm:id/hx").clear()
                print(int(row[2]),"使用者不存在")
            elif is_content_Appeared("操作過於頻繁,請稍後再試"):
                print(int(row[2]),"操作過於頻繁,請稍後再試")
                driver.quit()
                break
            elif is_content_Appeared("發訊息")==True:
                print(int(row[2]),"該使用者已經新增為好友")
                click_control("name","返回")
            elif is_content_Appeared("新增到通訊錄")==True:
                if is_content_Appeared("設定備註和標籤")==True:
                    click_control("name","設定備註和標籤")
                    click_control("name","新增標籤對聯絡人進行分類" )
                    driver.find_element_by_name("新增標籤").send_keys(row[3]) # 獲取標籤名
                    click_control("name","儲存")
                    click_control("ida", "返回")
                    click_control("name","新增到通訊錄")
                    click_control("id","com.tencent.mm:id/d4l")
                    driver.find_element_by_id("com.tencent.mm:id/d4l").clear()  # 清除備註名
                    driver.find_element_by_id("com.tencent.mm:id/d4l").send_keys(row[0]+ "(" + row[1]+ ")")  # 輸入被備註名
                    click_control("name","傳送")
                    print("成功傳送驗證訊息!")
                    click_control("name","返回")
                elif is_content_Appeared("設定備註和標籤")==False:
                    click_control("name", "新增到通訊錄")
                    click_control("id", "com.tencent.mm:id/d4l")
                    driver.find_element_by_id("com.tencent.mm:id/d4l").clear()  # 清除備註名
                    driver.find_element_by_id("com.tencent.mm:id/d4l").send_keys(row[0]+ "(" + row[1]+ ")")  # 輸入被備註名
                    click_control("name", "傳送")
                    print("成功傳送驗證訊息!")
                    click_control("name", "返回")
            else:
                driver.save_screenshot("app" + str(i) + ".png")
                print("其他情況")
            w=w+1
    except BaseException as e:
        print(e)
        driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)

到這裡,所有程式碼完畢。基本實現自動新增微信好友。

光是程式碼還不行,還有需要用到的軟體,放心,已經為您打包好了!

開啟微信,掃描下方二維碼,關注微信公眾號,傳送  “自動加好友”   獲取網盤連結。相關軟體一鍵免費獲取。

注:操作難度相對較大,非專業人士也可以進來看看。