Python实现手机号自动判断男女性别

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

  • 38
    点赞
  • 64
    收藏
    觉得还不错? 一键收藏
  • 12
    评论
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值