查看: 15565|回复: 40

[技术学习] q绑查询源码

  [复制链接]

50

主题

1748

帖子

3365

积分

论坛元老

Rank: 8Rank: 8

积分
3365
发表于 2021-7-31 16:10:16 | 显示全部楼层 |阅读模式
前两天发现找到一个Q绑批量查询的工具看了下是pyinstaller打包的,逆之!
得到源码如下:用tkinter编写
  1. import threading
  2. from tkinter import Button, Label, N, W, E, S, Text, END
  3. import tkinter.messagebox, webbrowser, pyperclip

  4. import requests
  5. from method import *
  6. import time




  7. class Window:
  8.     banben = 1.0

  9.     def __init__(self):
  10.         self.root = tkinter.Tk()
  11.         self.root.title('批量Q绑查询')
  12.         self.root.resizable(0, 0)
  13.         self.root.geometry('1000x730')
  14.         Button((self.root), text='开始转换', height=2, width=20, fg='red', font=10, command=(self.th1)).grid(row=1,
  15.                                                                                                          column=0,
  16.                                                                                                          columnspan=6,
  17.                                                                                                          pady=10)
  18.         Label((self.root), text='输入区', height=0).grid(row=3, column=0, columnspan=3, pady=5)
  19.         self.r = tkinter.IntVar()
  20.         self.r.set(1)
  21.         radio1 = tkinter.Radiobutton((self.root), text='Q查手', value=1, fg='red', font=6, variable=(self.r)).grid(row=2,
  22.                                                                                                                  column=2,
  23.                                                                                                                  pady=10)
  24.         radio2 = tkinter.Radiobutton((self.root), text='手查Q', value=2, fg='red', font=6, variable=(self.r)).grid(row=2,
  25.                                                                                                                  column=3,
  26.                                                                                                                  pady=10)
  27.         Label((self.root), text='输出区', height=0).grid(row=3, column=4, columnspan=3, pady=5)
  28.         self.text1 = Text((self.root), width=30, height=20, font=10)
  29.         self.text2 = Text((self.root), width=36, height=20, font=10)
  30.         self.text1.grid(row=4, column=0, columnspan=2, padx=16, pady=10, rowspan=4)
  31.         self.text2.grid(row=4, column=3, columnspan=3, padx=16, pady=1, rowspan=4)
  32.         Button((self.root), text='复制 >', height=0, width=8, fg='red', font=10, command=(self.fuzhi)).grid(row=5,
  33.                                                                                                           column=2)
  34.         Button((self.root), text='< 粘贴', height=0, width=8, fg='red', font=10, command=(self.zhantie)).grid(row=6,
  35.                                                                                                             column=2)
  36.         Button((self.root), text='说明', height=0, width=8, fg='red', font=10, command=(self.sm)).grid(row=8, column=0,
  37.                                                                                                      columnspan=2)
  38.         Button((self.root), text='清空', height=0, width=8, fg='red', font=10, command=(self.qk)).grid(row=8, column=2,
  39.                                                                                                      columnspan=8)
  40.         self.th2()
  41.         self.root.mainloop()

  42.     def bbgx(self):
  43.         url = 'https://www.hh52.cn/yy/qbangcha.txt'
  44.         txt = requests.get(url).text.encode('ISO-8859-1').decode('utf-8')
  45.         txt_list = txt.split('\n')
  46.         if str(self.banben) < txt_list[0]:
  47.             tkinter.messagebox.showinfo(title='更新提醒', message=(txt_list[2]))
  48.             webbrowser.open(txt_list[1])
  49.             self.root.destroy()
  50.         elif txt_list[3] == '0':
  51.             pass
  52.         else:
  53.             tkinter.messagebox.showinfo(title='提示', message=(txt_list[3]))

  54.     def qdzh(self):
  55.         sting = self.r.get()
  56.         text_content = self.text1.get('0.0', 'end').replace(' ', '').split('\n')
  57.         text_content.pop()
  58.         if text_content[0] == '':
  59.             tkinter.messagebox.showinfo(title='提示', message='麻烦把内容填一下再提交!')
  60.         else:
  61.             for text in text_content:
  62.                 texts = ''
  63.                 if len(text) < 3:
  64.                     continue
  65.                 if sting == 1:
  66.                     mobile = qq_mobile(str(text))
  67.                     texts = str(mobile)
  68.                 if sting == 2:
  69.                     qq = mobile_qq(text)
  70.                     texts = str(qq)
  71.                 self.text2.insert(END, texts + '\n')

  72.             tkinter.messagebox.showinfo(title='提示', message='查询完成!!')

  73.     def qk(self):
  74.         self.text1.delete(1.0, END)
  75.         self.text2.delete(1.0, END)

  76.     def sm(self):
  77.         tkinter.messagebox.showinfo(title='说明',
  78.                                     message='欢迎使用本软件,软件仅用于交流使用,严禁信息倒卖以及一些非法用途,否则,一切后果请用户自负。您必须在下载后的24个小时之内,从您的电脑或手机中彻底删除软件。')

  79.     def th1(self):
  80.         t1 = threading.Thread(target=(self.qdzh))
  81.         t1.setDaemon(True)
  82.         t1.start()
  83.         tkinter.messagebox.showinfo(title='提示', message='已经开始查询,请耐心等待!')

  84.     def th2(self):
  85.         t2 = threading.Thread(target=(self.bbgx))
  86.         t2.setDaemon(True)
  87.         t2.start()

  88.     def fuzhi(self):
  89.         text2 = self.text2.get('0.0', 'end')
  90.         pyperclip.copy(text2)

  91.     def zhantie(self):
  92.         text1 = pyperclip.paste()
  93.         self.text1.delete(1.0, END)
  94.         self.text1.insert(END, text1)


  95. if __name__ == '__main__':
  96.     w = Window()
复制代码

回复

使用道具 举报

0

主题

2981

帖子

7150

积分

论坛元老

Rank: 8Rank: 8

积分
7150
发表于 2021-8-1 06:02:42 | 显示全部楼层
珍惜生命,果断回帖。
回复

使用道具 举报

0

主题

607

帖子

1269

积分

金牌会员

Rank: 6Rank: 6

积分
1269
发表于 2021-8-1 07:24:15 | 显示全部楼层
啥也不说了,感谢楼主分享哇!
回复

使用道具 举报

0

主题

2309

帖子

3319

积分

论坛元老

Rank: 8Rank: 8

积分
3319
发表于 2021-8-1 07:36:57 | 显示全部楼层
珍惜生命,果断回帖。
回复

使用道具 举报

0

主题

9562

帖子

1万

积分

论坛元老

Rank: 8Rank: 8

积分
12608
发表于 2021-8-1 07:54:51 | 显示全部楼层
榎本梓,堀越由美,九条玲子,栗山绿,碓水律子
回复

使用道具 举报

0

主题

683

帖子

792

积分

高级会员

Rank: 4

积分
792
发表于 2021-8-1 08:12:25 | 显示全部楼层
珍惜生命,果断回帖。
回复

使用道具 举报

0

主题

878

帖子

1038

积分

金牌会员

Rank: 6Rank: 6

积分
1038
QQ
发表于 2021-8-1 08:17:49 | 显示全部楼层
啥也不说了,感谢楼主分享哇!
回复

使用道具 举报

0

主题

41

帖子

61

积分

注册会员

Rank: 2

积分
61
发表于 2021-8-1 09:21:18 | 显示全部楼层
珍惜生命,果断回帖。
回复

使用道具 举报

0

主题

414

帖子

727

积分

高级会员

Rank: 4

积分
727
发表于 2021-8-1 09:56:43 | 显示全部楼层
啥也不说了,感谢楼主分享哇!
回复

使用道具 举报

0

主题

414

帖子

727

积分

高级会员

Rank: 4

积分
727
发表于 2021-8-1 09:56:49 | 显示全部楼层
正需要,支持楼主大人了!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

返回顶部