Python爬虫:将headers请求头字符串转为字典的方法

yipeiwu_com6年前Python爬虫

原生请求头字符串

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("\n")])

输出测试

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("\n"))


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("; "))

以上这篇Python爬虫:将headers请求头字符串转为字典的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python爬虫基础教程:requests库(二)代码实例

get请求 简单使用 import requests ''' 想要学习Python?Python学习交流群:973783996满足你的需求,资料都已经上传群文件,可以自行下载! ''...

Python实现爬虫从网络上下载文档的实例代码

最近在学习Python,自然接触到了爬虫,写了一个小型爬虫软件,从初始Url解析网页,使用正则获取待爬取链接,使用beautifulsoup解析获取文本,使用自己写的输出器可以将文本输出...

Python爬虫实例爬取网站搞笑段子

众所周知,python是写爬虫的利器,今天作者用python写一个小爬虫爬下一个段子网站的众多段子。 目标段子网站为“http://ishuo.cn/”,我们先分析其下段子的所在子页的u...

Python爬虫之正则表达式的使用教程详解

Python爬虫之正则表达式的使用教程详解

正则表达式的使用 re.match(pattern,string,flags=0) re.match尝试从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功的话,match()就返回...

Python3实现抓取javascript动态生成的html网页功能示例

本文实例讲述了Python3实现抓取javascript动态生成的html网页功能。分享给大家供大家参考,具体如下: 用urllib等抓取网页,只能读取网页的静态源文件,而抓不到由jav...