自己用python写的编码小工具

xzqxzq   ·   发表于 2020-11-27 15:58:28   ·   安全工具

用python写的一款编码工具,包含json格式美化、base64/32编码、url编码解码、16进制编码解码、MD5加密


这里直接把代码贴上了,还有已经把python编译成exe了,有需要可以直接下载附件。
要加什么编码转换的可以留言,可以继续改进。

  1. import json
  2. import base64
  3. import urllib.parse
  4. import binascii
  5. import hashlib
  6. from tkinter import *
  7. from tkinter import ttk
  8. from tkinter import scrolledtext
  9. import tkinter as tk
  10. win = tk.Tk()
  11. win.title('编码转换工具 v1.0 By:天眼')
  12. win.geometry("900x600+300+200")
  13. ttk.Style().configure(".", font=("仿宋", 15))
  14. def json1():
  15. txt = scr1.get('0.0', 'end')
  16. a = json.loads(txt)#这是以字符串格式转换成json
  17. b = json.dumps(a,sort_keys=True,indent=4,separators=(',',':'),ensure_ascii=False)
  18. scr2.insert(END,b)#输出,需要通过插入来输出
  19. def json2():
  20. scr1.delete('0.0','end')
  21. scr2.delete('0.0','end')
  22. tab = ttk.Notebook(win)
  23. frame = tk.Frame(tab)
  24. tb1 = tab.add(frame,text = " json格式转换 ")
  25. scr1 = scrolledtext.ScrolledText(frame, width=95, height=17,font=(1))
  26. scr2 = scrolledtext.ScrolledText(frame, width=95, height=17,font=(1))
  27. scr1.place(x = 0,y = 0)
  28. scr2.place(x = 0,y = 285)
  29. button = Button(frame,text="转换",width=10,command = json1)#按钮
  30. button1 = Button(frame,text="清除",width=10,command = json2)#按钮
  31. button.place(x = 800,y = 100)
  32. button1.place(x = 800,y = 390)
  33. #--------------------------------------------
  34. def b64():#编码
  35. txt = scr3.get('0.0', 'end')
  36. strip = txt.strip('\n')
  37. e = base64.b64encode(strip.encode('utf-8')).decode('ascii')
  38. scr4.insert(END,e)
  39. def b643():#解码
  40. txt = scr3.get('0.0', 'end')
  41. strip = txt.strip('\n')
  42. e = base64.b64decode(strip.encode('utf-8'))
  43. b = e.decode()
  44. scr4.insert(END,b)
  45. def b32():
  46. txt = scr3.get('0.0', 'end')
  47. strip = txt.strip('\n')
  48. e = base64.b32encode(strip.encode('utf-8')).decode('ascii')
  49. scr4.insert(END,e)
  50. def b32a():#解码
  51. txt = scr3.get('0.0', 'end')
  52. strip = txt.strip('\n')
  53. e = base64.b32decode(strip.encode('utf-8'))
  54. b = e.decode()
  55. scr4.insert(END,b)
  56. def b642():#清除
  57. scr3.delete('0.0','end')
  58. scr4.delete('0.0','end')
  59. frame1 = tk.Frame(tab)
  60. tab2 = tab.add(frame1,text = " base64和32编码/解码 ")
  61. scr3 = scrolledtext.ScrolledText(frame1, width=95, height=17,font=(1))
  62. scr4 = scrolledtext.ScrolledText(frame1, width=95, height=17,font=(1))
  63. scr3.place(x = 0,y = 0)
  64. scr4.place(x = 0,y = 285)
  65. button2 = Button(frame1,text="ba64编码",width=10, command = b64)#按钮
  66. button22 = Button(frame1,text="ba64解码",width=10, command = b643)
  67. button20 = Button(frame1,text="ba32编码",width=10, command = b32)
  68. button23 = Button(frame1,text="ba32解码",width=10, command = b32a)
  69. button3 = Button(frame1,text="清除",width=10 , command = b642)#按钮
  70. button2.place(x = 800,y = 30)
  71. button22.place(x = 800,y = 80)#x左右,y是上下
  72. button3.place(x = 800,y = 390)
  73. button20.place(x = 800,y = 160)#x左右,y是上下
  74. button23.place(x = 800,y = 210)
  75. #--------------------------------------------------------------
  76. def url():
  77. txt = scr5.get('0.0','end')
  78. strip = txt.strip('\n')
  79. a = urllib.parse.quote(strip)
  80. scr6.insert('0.0',a)
  81. def url1():
  82. txt = scr5.get('0.0', 'end')
  83. strip = txt.strip('\n')
  84. a = urllib.parse.unquote(strip)
  85. scr6.insert('0.0',a)
  86. def url2():#清除
  87. scr5.delete('0.0','end')
  88. scr6.delete('0.0','end')
  89. frame2 = tk.Frame(tab)
  90. tab3 = tab.add(frame2,text = " URL编码/解码 ")
  91. scr5 = scrolledtext.ScrolledText(frame2, width=95, height=17,font=(1))
  92. scr6 = scrolledtext.ScrolledText(frame2, width=95, height=17,font=(1))
  93. scr5.place(x = 0,y = 0)
  94. scr6.place(x = 0,y = 285)
  95. button4 = Button(frame2,text="编码",width=10,command = url)#按钮
  96. button44 = Button(frame2,text="解码",width=10, command = url1)
  97. button5 = Button(frame2,text="清除",width=10,command = url2)#按钮
  98. button4.place(x = 800,y = 50)
  99. button44.place(x = 800,y = 150)
  100. button5.place(x = 800,y = 390)
  101. #------------------------------------------
  102. def hex():
  103. txt = scr7.get('0.0','end')
  104. strip = txt.strip('\n')
  105. c = strip.encode()
  106. a =binascii.hexlify(c).decode('ascii')
  107. scr8.insert('0.0',a)
  108. def hex1():
  109. b = scr7.get('0.0','end')
  110. a = binascii.unhexlify(b.strip('\n')).decode('ascii')
  111. scr8.insert('0.0',a)
  112. def hex2():#清除
  113. scr7.delete('0.0','end')
  114. scr8.delete('0.0','end')
  115. frame3 = tk.Frame(tab)
  116. tab4 = tab.add(frame3,text = " 16进制编码/解码 ")
  117. scr7 = scrolledtext.ScrolledText(frame3, width=95, height=17,font=(1))
  118. scr8 = scrolledtext.ScrolledText(frame3, width=95, height=17,font=(1))
  119. scr7.place(x = 0,y = 0)
  120. scr8.place(x = 0,y = 285)
  121. button6 = Button(frame3,text="编码",width=10,command = hex)#按钮
  122. button66 = Button(frame3,text="解码",width=10,command = hex1)
  123. button7 = Button(frame3,text="清除",width=10,command = hex2)#按钮
  124. button6.place(x = 800,y = 50)
  125. button66.place(x = 800,y = 150)
  126. button7.place(x = 800,y = 390)
  127. #-------------------------------------------
  128. def md5():
  129. txt = scr9.get('0.0','end')
  130. b = txt.strip('\n')
  131. a = hashlib.md5(b.encode(encoding='UTF-8')).hexdigest()
  132. scr10.insert('0.0',a)
  133. def md51():#清除
  134. scr9.delete('0.0','end')
  135. scr10.delete('0.0','end')
  136. frame4 = tk.Frame(tab)
  137. tab5 = tab.add(frame4,text = " MD5加密 ")
  138. scr9 = scrolledtext.ScrolledText(frame4, width=95, height=17,font=(1))
  139. scr10 = scrolledtext.ScrolledText(frame4, width=95, height=17,font=(1))
  140. scr9.place(x = 0,y = 0)
  141. scr10.place(x = 0,y = 285)
  142. button8 = Button(frame4,text="加密",width=10,command = md5)#按钮
  143. button9 = Button(frame4,text="清除",width=10,command = md51)#按钮
  144. button8.place(x = 800,y = 50)
  145. button9.place(x = 800,y = 390)
  146. tab.pack(expand = True, fill = 'both')
  147. win.mainloop()
用户名金币积分时间理由
奖励系统 50.00 0 2020-12-07 20:08:44 投稿满 5 赞奖励

打赏我,让我更有动力~

17 Reply   |  Until 1个月前 | 2264 View

李万吉
发表于 10个月前

1

评论列表

  • 加载数据中...

编写评论内容

ajming
发表于 10个月前

dddd,框架那一块就不会写

评论列表

  • 加载数据中...

编写评论内容

test123
发表于 10个月前

666

评论列表

  • 加载数据中...

编写评论内容

麻辣小龙瞎扯淡
发表于 10个月前

1

评论列表

  • 加载数据中...

编写评论内容

luck1213
发表于 10个月前

杂项里面经常遇到各种加密,膜拜大佬!

评论列表

  • 加载数据中...

编写评论内容

tianmao
发表于 10个月前

666

评论列表

  • 加载数据中...

编写评论内容

west_black
发表于 10个月前

1

评论列表

  • 加载数据中...

编写评论内容

z120z960z2663
发表于 10个月前

膜拜巨佬。

评论列表

  • 加载数据中...

编写评论内容

ypwypw1994
发表于 10个月前

666

评论列表

  • 加载数据中...

编写评论内容

hadesi
发表于 9个月前

666

评论列表

  • 加载数据中...

编写评论内容

欧阳春
发表于 9个月前

膜拜大佬

评论列表

  • 加载数据中...

编写评论内容

darren
发表于 9个月前

666

评论列表

  • 加载数据中...

编写评论内容

柠檬
发表于 8个月前

666

评论列表

  • 加载数据中...

编写评论内容

merlinzhs
发表于 4个月前

1

评论列表

  • 加载数据中...

编写评论内容

lbclbclbc
发表于 4个月前

1

评论列表

  • 加载数据中...

编写评论内容

常长老
发表于 3个月前

1

评论列表

  • 加载数据中...

编写评论内容

清河逸尘
发表于 1个月前

1

评论列表

  • 加载数据中...

编写评论内容
LoginCan Publish Content
返回顶部 投诉反馈

掌控者 © 2016 - 2021. All Rights Reserved. 掌控者

Powered by 掌控者