Python实现手机号自动判断男女性别(实例解析)

yipeiwu_com6年前Python基础

本文性别判断主要依靠airtest中的自动化测试实现

通过自动对比支付宝页面男女图像,从而实现男女判断

代码如下:

男女判断函数:

// An highlighted block
def numbe():
  if exists(Template(r"tpl1574867500094.png", threshold=0.85, rgb=True, target_pos=0, record_pos=(0.779, 0.382), resolution=(960, 540))):
    sex = "女"   
  if exists(Template(r"tpl1574924960910.png", threshold=0.89, rgb=True, target_pos=5, record_pos=(0.779, 0.382), resolution=(960, 540))):
    sex = "男"
  else:
    sex = "不存在"
  namesex = sex
  keyevent("4")
  return namesex

手机滑动(根据手机分辨率自行调整):

// An highlighted block
def scoll():
  try:
    swipe(v1=(629, 1750),v2=(629, 310)) # 滑动距离需要根据手机分辨率自行调整        
  except:
    print("can't go back to the main page")

刷选函数:

// An highlighted block
def number():  
  data_list =[]
  for i in range(9): # 根据手机分辨率自行调整
    try:
      title =poco(name="com.alipay.mobile.contactsapp:id/contact_item_name")[i].get_text()
      name = poco(name="com.alipay.mobile.contactsapp:id/concast_from")[i].get_text()
      print(title)
      name_a =name[5:6]
      if title not in data_list and name_a is not "1":
        poco("com.alipay.mobile.contactsapp:id/contact_item_name")[i].click()       
        sexname=numbe()      
        if sexname =="男":
          print(str(sexname))
      
        else:
          print(str(sexname))
          
      else:
        print(name_a)
        print("不存在")
    except:
      print("出错,跳过!")

综合:

// An highlighted block
# -*- encoding=utf8 -*-
__author__ = "liuqingsong"
def numbe():
  if exists(Template(r"tpl1574867500094.png", threshold=0.85, rgb=True, target_pos=0, record_pos=(0.779, 0.382), resolution=(960, 540))):
    sex = "女"   
  if exists(Template(r"tpl1574924960910.png", threshold=0.89, rgb=True, target_pos=5, record_pos=(0.779, 0.382), resolution=(960, 540))):
    sex = "男"
  else:
    sex = "不存在"
  namesex = sex
  keyevent("4")
  return namesex
def scoll():
  try:
    swipe(v1=(629, 1750),v2=(629, 310)) # 滑动距离需要根据手机分辨率自行调整        
  except:
    print("can't go back to the main page")

def number():  
  data_list =[]
  for i in range(9): # 根据手机分辨率自行调整
    try:
      title =poco(name="com.alipay.mobile.contactsapp:id/contact_item_name")[i].get_text()
      name = poco(name="com.alipay.mobile.contactsapp:id/concast_from")[i].get_text()
      print(title)
      name_a =name[5:6]
      if title not in data_list and name_a is not "1":
        poco("com.alipay.mobile.contactsapp:id/contact_item_name")[i].click()       
        sexname=numbe()      
        if sexname =="男":
          print(str(sexname))
          with open(r'./new/男.csv','a',encoding='utf-8') as f:
            f.write("{},{}\n".format(title,sexname))
        else:
          print(str(sexname))
          with open(r'./new/女.csv','a',encoding='utf-8') as f:
            f.write("{},{}\n".format(title,sexname))
      else:
        print(name_a)
        print("不存在")
    except:
      print("出错,跳过!")
a=0
while a<5:#根据手机上号码量的多少自行选择
  number()
  scoll()
  sleep(1)
  a=a+1

以上是用的是airtest实现的,效率不是很高,同样进行简单改动可以实现支付宝真实号码筛选,效率很高,偶尔使用一下还是可以的,切不可用于非法用途,大家有什么好的方式欢迎留言!

总结

以上所述是小编给大家介绍的Python实现手机号自动判断男女性别,希望对大家有所帮助!

相关文章

详解通过API管理或定制开发ECS实例

弹性管理 ECS 实例 获取 RAM 子账号 AK 密钥 使用API管理ECS实例,您需要能访问ECS资源的API密钥(AccessKey ID 和 AccessKey Secret)...

python实现简单登陆系统

新手,虽然比较简单的东西,但是弄了我很久。 很多不完善的地方,比如锁定用户,同一用户输入错三次密码就会锁定,但是如果在第二第三次换了用户再输入原来的用户,则计数会重新计算。 另外不存在的...

解决win7操作系统Python3.7.1安装后启动提示缺少.dll文件问题

解决win7操作系统Python3.7.1安装后启动提示缺少.dll文件问题

错误提示图片 首先,我的操作系统是win7旗舰版,安装Python3.7.1之后启动时,提示如图错误,网上比较多的是两种处理方法: (1)安装Windows补丁程序 (2)安装...

python操作gmail实例

本文实例讲述了python操作gmail的方法。分享给大家供大家参考。 具体实现方法如下: 复制代码 代码如下:import imaplib, re   class pygma...

python 函数中的内置函数及用法详解

python 函数中的内置函数及用法详解

今天来介绍一下Python解释器包含的一系列的内置函数,下面表格按字母顺序列出了内置函数: 下面就一一介绍一下内置函数的用法: 1、abs() 返回一个数值的绝对值,可以是整数或浮点数...