吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2281|回复: 10
收起左侧

[Python 原创] python请求头格式化_tkinterk可视化源码

  [复制链接]
kafei000 发表于 2022-2-13 00:58



应自己需求,自己编写的一个python请求头格式化小工具,基于python实现,使用了tkinter库进行可视化,pyinstaller 进行打包


功能:请求头格式化,格式化结果自动粘贴到剪贴板
特点:
    - 不会修改key,value字符串,(不会删去字符串里的空格),具体看工具贴
    - V1.1.2 新增自动复制格式化结果到剪贴板


对应工具贴:https://www.52pojie.cn/thread-1585760-1-1.html
例子:
输入: 复制代码 隐藏代码
:authority: blog.csdn.net:method: GET:path: /qq_30468133/article/details/ 84946416:scheme: httpsaccept: text/html,  application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9accept-encoding: gzip, deflate, braccept-language: zh-CN,zh;q=0.9,zh-TW;q=0.8,en;q=0.7
输出: 复制代码 隐藏代码
headers = {    ':authority': 'blog.csdn.net',    ':method': 'GET',    ':path': '/qq_30468133/article/details/ 84946416',    ':scheme': 'https',    'accept': 'text/html,  application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9',    'accept-encoding': 'gzip, deflate, br',    'accept-language': 'zh-CN,zh;q=0.9,zh-TW;q=0.8,en;q=0.7'}
基于python实现,使用了tkinter库进行可视化,pyinstaller 进行打包


源码: V1.1.2
[Python] 纯文本查看 复制代码
import tkinter as tk

def headers_format():
    headers_str = tbox_in.get("0.0", "end")   # 0行第0号位置,end:最后一个位置
    # print(headers_str)
    # 去除参数头尾的空格并按换行符分割
    headers_str = headers_str.strip().split('\n')
    headers = "headers = {\n"
    for x in headers_str:
        if x[0] == ':':
            index = x.index(':', 1)
            key = x[:index].strip()
            value = x[index+1:].strip()
        else:
            key = x.split(':', 1)[0]
            value = x.split(':', 1)[1]
        headers = headers + "    '" + key.strip() + "': '" + value.strip() + "',\n"
    headers = headers[:-2] + "\n}"
    win.clipboard_clear()  # 创建一个新的空白剪贴板,(一个剪贴板有多个剪贴记录)
    win.clipboard_append(headers) # 调用了tk.call(('clipboard', 'append'), 复制内容到剪贴板
    tbox_out.delete(0.0, tk.END)
    tbox_out.insert('end', headers)


if __name__ == '__main__':
    win = tk.Tk()
    win.title("请求头格式化")
    # geometry:几何形状
    win.geometry("620x470+500+150")
    win.resizable(0, 0)
    '''frame1、2、3框架建立'''
    frame1 = tk.LabelFrame(win, text="输入框")
    frame1.grid(row=0, column=0, sticky='nsew', padx=60, pady=20)
    frame2 = tk.LabelFrame(win, text='')
    frame2.grid(row=2, column=0)
    frame3 = tk.LabelFrame(win, text="输出框")
    frame3.grid(row=3, column=0, padx=10, pady=10)

    '''frame1框架配置,一个输入框'''
    tbox_in = tk.Text(frame1, width=70, height=10)
    tbox_in.grid(row=0, column=0)
    '''frame2框架配置,background:背景(按钮)颜色;foreground:前景(文字)颜色'''
    button1 = tk.Button(frame2, text="请求头格式化", width=15, height=2, background='#148FED', foreground='white', command=headers_format)
    button1.grid(row=0, column=0)  # sticky默认为'center'
    '''frame3框架配置,一个输出框'''
    tbox_out = tk.Text(frame3, width=70, height=10)
    tbox_out.grid(row=0, column=0)

    win.mainloop()



经历:
     最近接了一个tkinter的项目,有源码,要添加功能,之前tkinter学了一点,但是处于半吊子状态,缺少好的项目练习,尤其是布局方面看了项目源码之后感觉茅塞顿开,不像编写计算器那种。看了项目源码最大的收获就是 LabelFrame + grid布局,感觉非常好用
     V1.1.1 版本代码写的不能看,V1.1.2 就重写可视化部分代码,使用LabelFrame + grid布局,算是一个小小的练习。
     感觉可视化有些鸡肋,只有需要用到了才会花时间练习下,但是真的用tkinter做出好看的界面就感觉很牛x,pysimplegui好像是基于tkinter实现的,不知道用起来怎么样,有坛友涉猎可以告诉以下,pyqt感觉太臃肿了,做些小工具也用不上。




免费评分

参与人数 1吾爱币 +7 热心值 +1 收起 理由
苏紫方璇 + 7 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

zm55555 发表于 2022-2-13 09:12
谢谢分享!
MyModHeaven 发表于 2022-2-13 12:50
这不叫“可视化”吧。可视化是将数据转换成图形或图像,而 tkinter 是用来创建 GUI 应用程序的库
iiii12 发表于 2022-2-13 13:04
 楼主| kafei000 发表于 2022-2-13 15:53
MyModHeaven 发表于 2022-2-13 12:50
这不叫“可视化”吧。可视化是将数据转换成图形或图像,而 tkinter 是用来创建 GUI 应用程序的库

可视化界面。。。。
NNYY 发表于 2022-2-14 10:34
感谢楼主分享!
89684828 发表于 2022-2-14 17:32
标记一下,谢谢楼主!
fuxirjf 发表于 2022-2-22 14:04
楼上说的好像有点道理哈哈
前哥 发表于 2022-3-2 17:39
大佬,M1下打不开啊,提示launch error,解决下啊,对于MAC下来说很好用啊
 楼主| kafei000 发表于 2022-3-2 18:39
前哥 发表于 2022-3-2 17:39
大佬,M1下打不开啊,提示launch error,解决下啊,对于MAC下来说很好用啊

工具贴置顶了一个mac版本
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 08:35

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表