python

超轻量级php框架startmvc

python 通过手机号识别出对应的微信性别(实例代码)

更新时间:2020-08-15 20:48:01 作者:startmvc
python通过手机号识别出对应的微信性别,具体代码如下所述:defgetGender(self,tel):self.d(resourceI

python 通过手机号识别出对应的微信性别,具体代码如下所述:


def getGender(self,tel):
 self.d(resourceId="com.tencent.mm:id/kh").clear_text()
 self.d(resourceId="com.tencent.mm:id/kh").set_text(tel) 
 self.d(resourceId="com.tencent.mm:id/mf").click() 
 time.sleep(1)
 self.d.watcher("AccNotExist").when(text="该用户不存在").click(resourceId="com.tencent.mm:id/kd")
 self.d.watcher("AccException").when(text="被搜帐号状态异常,无法显示").click(resourceId="com.tencent.mm:id/kd"
 self.d.watchers.run()
 AccNotExist = self.d.watcher("AccNotExist").triggered
 AccException = self.d.watcher("AccException").triggered
 OperationFrequently = self.d.watcher("OperationFrequently").triggered
 if AccNotExist:
 self.d.watchers.reset()
 return "用户不存在"
 elif AccException:
 self.d.watchers.reset()
 return "被搜帐号状态异常,无法显示"
 elif OperationFrequently:
 self.d.watchers.reset()
 if self.d(resourceId="com.tencent.mm:id/b3y").exists:
 gender = self.d(resourceId="com.tencent.mm:id/b3y").info['contentDescription']
 self.d(resourceId="com.tencent.mm:id/kb").click() # back
 return gender
 else:
 self.d(resourceId="com.tencent.mm:id/kb").click() # back
 return "用户未设置性别"
def write_excel_xls(self,pathfile, value):
 index = len(value) 
 workbook = xlwt.Workbook() # 新建一个工作簿
 sheet1 = workbook.add_sheet("boy") # 在工作簿中新建一个表格
 sheet2 = workbook.add_sheet("girl")
 sheet3 = workbook.add_sheet("NotSet")
 sheet4 = workbook.add_sheet("NotExist")
 sheet5 = workbook.add_sheet("AccountE")
 def writesheet(self,sheet):
 for i in range(0, index):
 for j in range(0, len(value[i])):
 sheet.write(i, j, value[i][j]) # 像表格中写入数据(对应的行和列)
 workbook.save(pathfile) # 保存工作簿
 writesheet(self,sheet1)
 writesheet(self,sheet2)
 writesheet(self,sheet3)
 writesheet(self,sheet4)
 writesheet(self,sheet5)
def write_excel_xls_append(self,pathfile, sheet_name, value):
 index = len(value) # 获取需要写入数据的行数
 workbook = xlrd.open_workbook(pathfile) # 打开工作簿
 # sheets = workbook.sheet_names() # 获取工作簿中的所有表格
 worksheet = workbook.sheet_by_name(sheet_name) # 获取工作簿中所有表格中的的第一个表格
 rows_old = worksheet.nrows # 获取表格中已存在的数据的行数
 new_workbook = copy(workbook) # 将xlrd对象拷贝转化为xlwt对象
 new_worksheet = new_workbook.get_sheet(sheet_name) # 获取转化后工作簿中的第一个表格
 for i in range(0, index):
 for j in range(0, len(value[i])):
 new_worksheet.write(i + rows_old, j, value[i][j]) # 追加写入数据,注意是从i+rows_old行开始写入
 new_workbook.save(pathfile) # 保存工作簿
 # print("%s【追加】写入数据成功!" % pathfile)
 
def read_excel_xls(self,pathfile, sheet_name):
 workbook = xlrd.open_workbook(pathfile) # 打开工作簿
 sheets = workbook.sheet_names() # 获取工作簿中的所有表格
 worksheet = workbook.sheet_by_name(sheet_name) # 获取工作簿中所有表格中的的第一个表格
 for i in range(0, worksheet.nrows):
 for j in range(0, worksheet.ncols):
 print(worksheet.cell_value(i, j), "\t", end="") # 逐行逐列读取数据

ps:下面看下python 通过电话号码获取微信性别信息

getWeixinPro.py


# coding:utf-8
import sys,re,xlrd
from xlwt import *
reload(sys)
sys.setdefaultencoding('utf8')
from uiautomator import device as d
import unittest
import time
#打开excel
def openExcel(file):
 try:
 data = xlrd.open_workbook(file)
 return data
 except Exception as e:
 print (str(e))
def floatToInt(list):
 realList = []
 for value in list:
 if (type(value) == float):
 value = str(value)
 value = re.sub('\.0*$', "", value)
 value = str(value).rstrip()
 realList.append(value)
 return realList
class Mytest(unittest.TestCase):
 #初始化工作
 def setUp(self):
 print ("--------------初始化工作")
 #退出清理工作
 # def tearDown(self):
 # print ("--------------退出清理工作")
 #测试
 def test_33(self):
 # d.screen.on()
 file='1.xlsx'
 print("check[+] %s" % file)
 data = openExcel(file)
 sheets = data.sheets()
 table=sheets[0]
 writeFile = Workbook(encoding='utf-8')
 # 指定file以utf-8的格式打开
 writeTable = writeFile.add_sheet('微信号-性别')
 for row in range(table.nrows):
 tel=floatToInt(table.row_values(row))[0]
 if not d(resourceId="com.tencent.mm:id/h2").exists:
 if d(resourceId='com.tencent.mm:id/h7').exists:
 d(resourceId='com.tencent.mm:id/h7').click()
 if d(resourceId="com.tencent.mm:id/h2").exists:
 d(resourceId="com.tencent.mm:id/h2").clear_text()
 d(resourceId="com.tencent.mm:id/h2").set_text(tel)
 d(resourceId='com.tencent.mm:id/b20').click()
 d.watcher(tel).when(resourceId="com.tencent.mm:id/aes").when(text="确定") \
 .click(text="确定")
 d.watchers.run()
 isTriggered=d.watcher(tel).triggered
 print(isTriggered)
 if isTriggered:
 d.watcher(tel).remove()
 if not isTriggered:
 if d(resourceId='com.tencent.mm:id/agf').exists:
 contentDescription=d(resourceId='com.tencent.mm:id/agf').info['contentDescription']
 print("tel=%s,sex=%s"%(tel,contentDescription))
 writeTable.write(row, 0, tel)
 writeTable.write(row, 1, contentDescription)
 else:
 print("tel=%s,sex=%s" % (tel,"用户没有设置性别"))
 writeTable.write(row, 0, tel)
 writeTable.write(row, 1, "用户没有设置性别")
 if d(resourceId='com.tencent.mm:id/h7').exists:
 d(resourceId='com.tencent.mm:id/h7').click()
 else:
 print("tel=%s,sex=%s" % (tel, "没有该用户"))
 writeTable.write(row, 0, tel)
 writeTable.write(row, 1, "没有该用户")
 time.sleep(3)
 writeFile.save('wx_tel_sex.xlsx')
 print ("--------------测试1")
if __name__ == '__main__':
 # from uiautomator import device as d
 #
 #
 # print(d.info)
 #
 # d.press.power()
 unittest.main()

总结

以上所述是小编给大家介绍的python 通过手机号识别出对应的微信性别,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

python 手机号识别 python手机号微信性别