脚本作用
我们用python脚本模拟浏览器或app向服务器提交http或https请求时,大多数情况用到post方法,这时候就需要手动复制headers和data过来构造成json数据,放在自己在脚本里。但是有时候不能直接复制到标准的json数据,例如:键值对没有用单引号或双引号括起来、单行键值对末尾没加逗号、同一行两个键值对之间的分号后面没加空格,有点难看。如果有很多键值对,那么手动改为标准的json数据会很费时间,于是就有了这个脚本。
实现方法
首先复制headers或data数据到文本,用python读取文本的每一行键值对进行格式化处理,最后输出标准数据,自动复制到剪贴板,方便粘贴代码。为了方便阅读,我先把数据转换成python的dict数据,在提交post请求时,用json.dumps()方法将dict转化成json就可以了。
实现代码
convert_to_dict.py
# -*- coding: utf-8 -*-
import pyperclip
import re
class ConvertToDict:
def __init__(self, data):
# 如果键的第一个字符为冒号,就临时替换为#号
if data[0] == ':':
data = '#' + data[1:]
# 去除首尾空格并将键值对分开
data_list = data.strip().split(':', 1)
# 将#号恢复为冒号的键
self.key = data_list[0]