吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1353|回复: 7
收起左侧

[讨论] 写个py方便给请求头加引号(顺便回忆下字符串替换) 还有别的替换方式欢迎留言

[复制链接]
lihu5841314 发表于 2021-8-5 21:00
[Asm] 纯文本查看 复制代码
#方便给headers加引号
import re


headers_str="""

:authority: ss1.bdstatic.com
:method: GET
:path: /5eN1bjq8AAUYm2zgoY3K/r/www/cache/static/protocol/https/plugins/every_cookie_4644b13.js
scheme: https
accept: */*
accept-encoding: gzip, deflate, br
accept-language: zh-CN,zh;q=0.9
cache-control: no-cache
pragma: no-cache
referer: https://www.baidu.com/
sec-ch-ua: " Not;A Brand";v="99", "Google Chrome";v="91", "Chromium";v="91"
sec-ch-ua-mobile: ?0
sec-fetch-dest: script
sec-fetch-mode: no-cors
sec-fetch-site: cross-site
user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.106 Safari/537.36


       """

pattern = r"^(.*?):\s?(.*?$)"
#Python splitlines() 按照行('\r', '\r\n', \n')分隔,返回一个包含各行作为元素的列表,如果参数 keepends 为 False,不包含换行符,如果为 True,则保留换行符。
#keepends -- 在输出结果里是否保留换行符('\r', '\r\n', \n'),默认为 False,不包含换行符,如果为 True,则保留换行符。 str.splitlines([keepends])
for line in headers_str.splitlines():
    #有时候网页的header前面有冒号 ,需要处理
    if  line.startswith(':'):
        line.strip()
        #删除特定位置的字符串  方法1. pop()  先转化成列表pop 在jion合成字符串
        # line = list(line)
        # line.pop(0)
        # line = ''.join(line)
        #方法二
        # line = line[1:]
        #方法三   remove方法  也是需要列表
        # line = list(line)
        # line.remove(line[0])
        # line = "".join(line)
        #方法四  str的replace方法  可选参数  count参数就可以指定要替换几个
        # line = line.replace(":","",1)  #1代表替换次数
        #方法五 用正则替换
        line = re.sub(r'^:',"",line)
        print(re.sub(pattern, r'"\1": "\2",', line))
    else:
        print(re.sub(pattern, r'"\1": "\2",', line))

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

Gkf318 发表于 2021-8-5 21:44
请求头替换吗不错
muyan1995 发表于 2021-8-5 21:45
jjjzw 发表于 2021-8-6 00:25
我自己一直在用的
[Python] 纯文本查看 复制代码
import json

# 使用三引号将浏览器复制出来的requests headers参数赋值给一个变量
headers = """
Accept: */*
Connection: keep-alive
Accept-Language: zh-cn
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/11.1.2 Safari/605.1.15
Content-Length: 21
X-Requested-With: XMLHttpRequest
"""

headers = headers.strip().split('\n')
headers = {x.split(':')[0].strip(): ("".join(x.split(':')[1:])).strip().replace('//', "://") for x in headers}
print(json.dumps(headers, indent=1))
ermao 发表于 2021-8-6 08:36
pandas读数据格式化,然后导出字典
 楼主| lihu5841314 发表于 2021-8-6 08:56
jjjzw 发表于 2021-8-6 00:25
我自己一直在用的[mw_shl_code=python,true]import json

# 使用三引号将浏览器复制出来的requests heade ...

:authority: ss1.bdstatic.com前面有冒号  好像不能完美加引号
jjjzw 发表于 2021-8-6 09:35
lihu5841314 发表于 2021-8-6 08:56
:authority: ss1.bdstatic.com前面有冒号  好像不能完美加引号

header前面那部分是不需要的
 楼主| lihu5841314 发表于 2021-8-6 09:42
jjjzw 发表于 2021-8-6 09:35
header前面那部分是不需要的

是不需要  我的意思是自动舍弃前面的冒号
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

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

GMT+8, 2024-11-26 01:52

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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