• Python爬虫:将headers请求头字符串转为字典


    第一种方法

    在这里插入图片描述

    如上图所示,然后复制粘贴到pycharm里,存放到字典里

    在这里插入图片描述

    然后使用ctrl+r快捷键打开替换功能,并勾选Regex

    替换源为:(.?): (.?)$

    替换为:"$1": “$2”,

    在这里插入图片描述

    然后点击Replace all替换全部:

    在这里插入图片描述

    最后再ctrl+alt+L键,整理一下格式就行了
    在这里插入图片描述

    第二种方法

    原生请求头字符串

    raw_headers = """Host: open.tool.hexun.com
    Pragma: no-cache
    Cache-Control: no-cache
    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
    Accept: */*
    Referer: http://stock.hexun.com/gsxw/
    Accept-Encoding: gzip, deflate
    Accept-Language: zh-CN,zh;q=0.9,en;q=0.8"""
    

    将字符串转为字典

    split(sep=None, maxsplit=None)
    
    headers = dict([line.split(": ",1) for line in raw_headers.split("
    ")])
    

    输出测试

    print(headers)
    """
    {
        'Accept-Language': ' zh-CN,zh;q=0.9,en;q=0.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': ' http://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("
    ") 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

    参考:https://pengshiyu.blog.csdn.net/article/details/105398552
    https://blog.csdn.net/weixin_44251004/article/details/91434588

  • 相关阅读:
    ApiController实现自定义身份认证
    类型参数的约束(C# 编程指南)
    C# 交集、并集、差集
    Winform多线程使用委托操作控件
    ShowWindowAsync系统方法cmdShow参数值含义
    xtraTabbedMdiManager控件切换时控件不更新的问题
    ApiController默认使用Json格式
    css单位介绍em ex ch rem vw vh vm cm mm in pt pc px
    JavaScript 函数大全
    css3动画整理
  • 原文地址:https://www.cnblogs.com/nmydt/p/14256316.html
Copyright © 2020-2023  润新知