本文性别判断主要依靠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

原文链接:https://blog.csdn.net/qq_15687823/article/details/103645268

Python实现手机号自动判断性别的更多相关文章

  1. python基础3 条件判断 if嵌套

    if单向判断: stonenumber=6#为宝石数量赋值 if stonenumber>=6: #条件:如果你拥有的宝石数量大于等于6个 print('你拥有了毁灭宇宙的力量') #结果:显示 ...

  2. Python实现12306自动查票程序

    这是在网上扒拉过来的,原文链接: http://blog.csdn.net/An_Feng_z/article/details/78631290 目前时间2018/01/04 文中各种接口均为可用,亲 ...

  3. 基于esky实现python应用的自动升级

    一.esky介绍 Esky is an auto-update framework for frozen Python applications. It provides a simple API t ...

  4. 3. Python中的分支判断、循环

    本文利用的是Python 3.x版本,建议学习3.x版本 Python中的分支判断.循环 1. 分支条件判断 1.1 比较操作 以下是数之间常见的比较操作,例如5>3就是数学意义上的比较,5是大 ...

  5. 用 Python 为接口测试自动生成用例

    用Python为接口自动生成测试用例 基于属性的测试会产生大量的.随机的参数,特别适合为单元测试和接口测试生成测试用例 尽管早在2006年haskell语言就有了QuickCheck来进行" ...

  6. python进行mp3格式判断

    python进行mp3格式判断 项目中使用mp3格式进行音效播放,遇到一个mp3文件在程序中死活播不出声音,最后发现它是wav格式的文件,却以mp3结尾.要对资源进行mp3格式判断,那么如何判断呢,用 ...

  7. 自动判断应该Ajax还是return

    起因 最近回顾以前的代码,发现一个偶尔会见到的现象.一个类里面的方法可能需要Ajax返回,也有可能需要函数return.这个现象发生在网站MVC中的 逻辑层(或模型层),示例如下.IndexCtrl是 ...

  8. Andoid自动判断输入是电话,网址或者Email的方法----Linkify的应用!

    本节要讲的是,当我们在一个EditText输入电话或者网址还是Email的时候,让Android自动判断,当我们输入的是电话,我们点击输入内容将调用打电话程序,当我们输入是网址点击将打开浏览器程序.而 ...

  9. 彻底解决android读取中文txt的乱码(自动判断文档类型并转码

    原文:http://blog.csdn.net/handsomedylan/article/details/6138400 public String convertCodeAndGetText(St ...

随机推荐

  1. 攻防世界 | CGfsb

    所以题目要求是输入生日1926l

  2. 2019牛客暑期多校训练营(第六场)C - Palindrome Mouse (回文自动机)

    https://ac.nowcoder.com/acm/contest/886/C 题意: 给出一个串A , 集合S里面为A串的回文字串 , 现在在集合S里面找出多少对(a,b),b为a的字串 分析: ...

  3. day38—JavaScript的运动基础-匀速运动

    转行学开发,代码100天——2018-04-23 一.运动基础框架 JavaScript的运动可以广义理解为渐变效果,直接移动效果等,图网页上常见的“分享到”,banner,透明度变化等.其实现的基本 ...

  4. java 创建文件 呵呵 成功

    package aaa;import java.util.Date;import java.util.regex.Matcher;import java.util.regex.Pattern;impo ...

  5. datastudio 里关于with as 的用法。

    datastudio 里sql 语句的写法,加入with as 语法. 这样方便查询,易于维护.以后都这样写. 优点: 1 易于维护,可以复用代码块 2 优化书写逻辑,方便查阅理解. 3  性能方面优 ...

  6. 【ABAP系列】SAP smartforms金额字段产生空格,除去空格的方法

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP smartforms金额 ...

  7. 2019年Java Web最流行的开发框架总结

    ORM型框架:对数据进行持久化操作,例如:基于SQL的MyBatis框架和Hibernate框架. MVC型框架:从逻辑上分为视图层,控制层,模型层,各层各司其职,之间是相互调用的关系,而不是相互依赖 ...

  8. C语言readdir()函数:读取目录函数

    相关函数:open, opendir, closedir, rewinddir, seekdir, telldir, scandir 头文件:#include <sys/types.h> ...

  9. Java thread(3)

    线程间的调度策略 通常是选择优先级高的线程,但是若发生以下情况则终止线程的运行:    1 调用yield 让出对cpu的占用权. 2 调用sleep 3 线程由于I/O操作而受阻 4 更高优先级的线 ...

  10. JAVA泛型知识(二)--> <? extends T>和<? super T>

    <? extends T> 和 <? super T> 是Java泛型中的“通配符(Wildcards)” 和 “边界(Bounds)”的概念 <? extends T& ...