Python 模仿按键精灵,批量验证和添加手机号码为企业微信账号的联系人「建议收藏」

Python 模仿按键精灵,批量验证和添加手机号码为企业微信账号的联系人「建议收藏」源码:importtkinterastkimportpyautoguiaspgimporttkinter.messageboxasmsgboxdefsetpos():globalx,ytry:x,y=eval(tEntry.get())except:passpg.click(x-150,y)pg.typewrite(‘1’)pg.moveTo(x,y,duration=0.5)defalt…

大家好,又见面了,我是你们的朋友全栈君。

需求

批量验证和添加手机号码为企业微信账号的联系人

Python 模仿按键精灵,批量验证和添加手机号码为企业微信账号的联系人「建议收藏」

源码

import tkinter as tk
import pyautogui as pg
import tkinter.messagebox as msgbox

def setpos():
    global x,y
    try: x,y = eval(tEntry.get())
    except: pass
    pg.click(x-150,y)
    pg.typewrite('1')
    pg.moveTo(x,y,duration=0.5)

def alter(num):
    tList.delete(index)
    tList.insert(index,phone+','+str(num))
    user[index] = phone+','+str(num)
    with open("phones.txt","w",encoding="utf-8") as f:
        f.write('\n'.join(user))

def flag0():
    alter(0)

def flag1():
    alter(1)

def flag2():
    alter(2)

def start():
    global x,y,index,phone
    x0,y0 = pg.position()
    lines = len(user)
    index = -1
    for i in user:
        index += 1
        if len(i)==11:break
    phone = user[index]
    if len(phone)>11:
        msgbox.showinfo('提示','手机号大于11位,或全部结束!')
    else:
        try:
            t = tList.curselection()[0]
            tList.select_clear(t,t)
        except: pass
        tList.select_set(index,index)
        pg.click(x-150,y)
        pg.typewrite('\b'*50)
        pg.typewrite(phone)
        pg.moveTo(x,y,duration=0.5)
        pg.click()
        pg.moveTo(x0,y0)

def main():
    '''written by hannyang 2021.10.16'''
    global tEntry,tList
    global user
    
    root = tk.Tk()
    root.geometry(f'375x323+{x+55}+{y-85}')
    root.resizable(False, False)
    root.title('《企业微信好友》')
    root.wm_attributes('-topmost',True)

    tEntry = tk.Entry(root,width=8)
    tEntry.place(x = 275, y = 270)
    tEntry.insert(0,'995,410')

    bt1 = tk.Button(root,text=' 定位 ',command = setpos)
    bt1.place(x = 220, y = 265)

    bt2 = tk.Button(root,text=' 开始 ',command = start)
    bt2.place(x = 30, y = 265)

    bt3 = tk.Button(root,text=' 标0 ',command = flag0)
    bt3.place(x = 80, y = 265)

    bt4 = tk.Button(root,text=' 标1 ',command = flag1)
    bt4.place(x = 125, y = 265)

    bt5 = tk.Button(root,text=' 标2 ',command = flag2)
    bt5.place(x = 170, y = 265)

    user = []
    try:
        with open('phones.txt', 'r', encoding='utf-8') as fn:
            users = fn.readlines()
        for usr in users:
            if usr[-1]=='\n': usr=usr[:-1]
            user.append(usr.strip())
    except:
        user = ['当前文件夹中phones.txt文件不存在!']
        
    tScroll=tk.Scrollbar(root, orient=tk.VERTICAL)
    tScroll.place(x=330,y=25,height=220)
    
    tList=tk.Listbox(root,selectmode=tk.BROWSE,yscrollcommand=tScroll.set)
    tList.place(x=30,y=25,width=300,height=220)
 
    for i in user:
        tList.insert(tk.END,i)
        
    tScroll.config(command=tList.yview)
    tList.select_set(0,0)
    root.update()
    tmp = list(set(user))
    diff = len(user)-len(tmp)
    if diff!=0:
        msgbox.showinfo('提示',f'存在{diff}个重复手机号!可忽略')
    root.mainloop()


if __name__ == '__main__':
    
    x,y = pg.size()
    x = (x - 390)//2 + 350
    y = (y - 360)//2 + 65
    
    main()

 注:代码倒数两三行中,390,360是被点窗口的大小,350,65用于定位坐标。

以下是保存电话的文本文件 phones.txt 的内容,手机号码已隐去:

Python 模仿按键精灵,批量验证和添加手机号码为企业微信账号的联系人「建议收藏」

运行

Python 模仿按键精灵,批量验证和添加手机号码为企业微信账号的联系人「建议收藏」

程序没有设置全自动的验证和添加,如果需要的话,则要把相关的按钮截图保存好.png图片,然后使用 pyautogui.locateCenterOnScreen() 等函数来定位,加上循环语句就能达成。

一起学习交流 Python 的群二维码地址: http://qr01.cn/FHYKEa

Python 模仿按键精灵,批量验证和添加手机号码为企业微信账号的联系人「建议收藏」

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/139159.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 腾讯云 Ubuntu16.04.1 允许 root 用户 SSH登录 修改 sshd_config PermitRootLogin 后登录失败[通俗易懂]

    腾讯云 Ubuntu16.04.1 允许 root 用户 SSH登录 修改 sshd_config PermitRootLogin 后登录失败[通俗易懂]腾讯云Ubuntu16.04.1允许root用户SSH登录修改sshd_configPermitRootLogin后登录失败今天重装了吃灰很久的服务器,选择的是Ubuntu,腾讯云默认会创建名为ubuntu的用户用于ssh登录。ubuntu执行某些命令时权限不够需要加sudo,我超级不喜欢输入命令行时加上sudo的╰(‵□′)╯。解决

    2022年5月29日
    47
  • 关于MATLAB读取txt文件的方法[通俗易懂]

    关于MATLAB读取txt文件的方法[通俗易懂]关于MATLAB读取txt文件的方法一、如何读取一个文档下,多个txt文件?一般读取的文件,命名都具有一定的规律,除去相同部分,剩下的变化按照时间、序号、某一特定的标志符等进行排列。下面我们举个例子来操作。假如文件夹里存在以下文件:cs20170701cs20170702cs20170703cs20170704…cs20170731标签:cs代表产品类型,数字代表年月日。总共…

    2022年9月6日
    4
  • 第二周CorelDRAW课总结

    第二周CorelDRAW课总结

    2021年5月25日
    133
  • Spring Cloud的架构[通俗易懂]

    Spring Cloud的架构[通俗易懂]SpringCloud架构图Eureka用于服务注册和发现,利用了客户端的服务发现,所以它内部需要Ribbon作为客户端负载均衡。Hystrix,客户端容错保护,服务熔断、请求缓存、请求合并、依赖隔离。Feign,声明式服务调用。Bus,消息总线,配合Config仓库修改的一种Stream实现,Dashboard,Hystrix仪表盘,监控集群模式和单点模式,其中集群模式…

    2022年5月13日
    34
  • 手把手教你训练自己的Mask R-CNN图像实例分割模型(PyTorch官方教程)

    手把手教你训练自己的Mask R-CNN图像实例分割模型(PyTorch官方教程)近来在学习图像分割的相关算法,准备试试看MaskR-CNN的效果。关于MaskR-CNN的详细理论说明,可以参见原作论文https://arxiv.org/abs/1703.06870,网上也有大量解读的文章。本篇博客主要是参考了PyTorch官方给出的训练教程,将如何在自己的数据集上训练MaskR-CNN模型的过程记录下来,希望能为感兴趣的读者提供一些帮助。PyTorch官方教程(…

    2022年8月23日
    12
  • SIGPIPE and EPIPE

    SIGPIPE and EPIPESIGPIPEandEPIPESIGPIPE是如下情况引起的(这里只是一个例子)grep”pattern”<reallyhugefile|headgrep有可能会输出上百万行,但是head只需要读取10行就会退出.一旦head将管道的读端关闭,那么grep就会获得SIGPIPE信号,然后被强制退出,使其节约资源.如果不想自己的程序因为这…

    2022年5月7日
    37

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号