如何将headers请求头字符串转换成字典?
- 内容介绍
- 文章标签
- 相关推荐
本文共计410个文字,预计阅读时间需要2分钟。
一种方法是将图片中的水印复制粘贴到PyCharm的字典中,然后使用Ctrl+R快捷键打开替换功能,选择Regex替换,将源替换为image/watermark,类型设置为ZmFuZ3poZW5naGVpdGk,阴影设置为10,文字为aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2ExMjM1。
第一种方法如上图所示然后复制粘贴到pycharm里存放到字典里然后使用ctrlr快捷键打开替换功能并勾选Regex替换源为image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2ExMjM1NTU1Ng,size_16,color_FFFFFF,t_70" />如上图所示然后复制粘贴到pycharm里存放到字典里
然后使用ctrlr快捷键打开替换功能并勾选Regex
替换源为(.?): (.?)$
替换为"$1": “$2”,
然后点击Replace all替换全部
最后再ctrlaltL键整理一下格式就行了
第二种方法原生请求头字符串
raw_headers """Host: open.tool.hexun.comPragma: no-cacheCache-Control: no-cacheUser-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.84 Safari/537.36Accept: */*Referer: stock.hexun.com/gsxw/Accept-Encoding: gzip, deflateAccept-Language: zh-CN,zh;q0.9,en;q0.8"""
将字符串转为字典
split(sepNone, maxsplitNone)headers dict([line.split(": ",1) for line in raw_headers.split("\n")])
输出测试
print(headers)"""{Accept-Language: zh-CN,zh;q0.9,en;q0.8, Accept-Encoding: gzip, deflate, Accept: */*, User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.84 Safari/537.36, Host: open.tool.hexun.com, Referer: stock.hexun.com/gsxw/, Pragma: no-cache, Cache-Control: no-cache}"""
封装为函数
def get_headers(header_raw):"""通过原生请求头获取请求头字典:param header_raw: {str} 浏览器请求头:return: {dict} headers"""return dict(line.split(": ", 1) for line in header_raw.split("\n") if line ! )def get_COOKIEs(COOKIE_raw):"""通过原生COOKIE获取COOKIE字段:param COOKIE_raw: {str} 浏览器原始COOKIE:return: {dict} COOKIEs"""return dict(line.split("", 1) for line in COOKIE_raw.split("; "))
说明浏览器Header和COOKIE字符串形式转Json
不会或者没有这个集成软件的就对着改用word。
本文共计410个文字,预计阅读时间需要2分钟。
一种方法是将图片中的水印复制粘贴到PyCharm的字典中,然后使用Ctrl+R快捷键打开替换功能,选择Regex替换,将源替换为image/watermark,类型设置为ZmFuZ3poZW5naGVpdGk,阴影设置为10,文字为aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2ExMjM1。
第一种方法如上图所示然后复制粘贴到pycharm里存放到字典里然后使用ctrlr快捷键打开替换功能并勾选Regex替换源为image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2ExMjM1NTU1Ng,size_16,color_FFFFFF,t_70" />如上图所示然后复制粘贴到pycharm里存放到字典里
然后使用ctrlr快捷键打开替换功能并勾选Regex
替换源为(.?): (.?)$
替换为"$1": “$2”,
然后点击Replace all替换全部
最后再ctrlaltL键整理一下格式就行了
第二种方法原生请求头字符串
raw_headers """Host: open.tool.hexun.comPragma: no-cacheCache-Control: no-cacheUser-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.84 Safari/537.36Accept: */*Referer: stock.hexun.com/gsxw/Accept-Encoding: gzip, deflateAccept-Language: zh-CN,zh;q0.9,en;q0.8"""
将字符串转为字典
split(sepNone, maxsplitNone)headers dict([line.split(": ",1) for line in raw_headers.split("\n")])
输出测试
print(headers)"""{Accept-Language: zh-CN,zh;q0.9,en;q0.8, Accept-Encoding: gzip, deflate, Accept: */*, User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.84 Safari/537.36, Host: open.tool.hexun.com, Referer: stock.hexun.com/gsxw/, Pragma: no-cache, Cache-Control: no-cache}"""
封装为函数
def get_headers(header_raw):"""通过原生请求头获取请求头字典:param header_raw: {str} 浏览器请求头:return: {dict} headers"""return dict(line.split(": ", 1) for line in header_raw.split("\n") if line ! )def get_COOKIEs(COOKIE_raw):"""通过原生COOKIE获取COOKIE字段:param COOKIE_raw: {str} 浏览器原始COOKIE:return: {dict} COOKIEs"""return dict(line.split("", 1) for line in COOKIE_raw.split("; "))
说明浏览器Header和COOKIE字符串形式转Json
不会或者没有这个集成软件的就对着改用word。

