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爬虫之HTTP异常处理

先来说一说HTTP的异常处理问题。当urlopen不能够处理一个response时,产生urlError。不过通常的Python APIs异常如ValueError,TypeError等也...

python动态网页批量爬取

python动态网页批量爬取

四六级成绩查询网站我所知道的有两个:学信网(http://www.chsi.com.cn/cet/)和99宿舍(http://cet.99sushe.com/),这两个网站采用的都是动态...

selenium+PhantomJS爬取豆瓣读书

本文实例为大家分享了selenium+PhantomJS爬取豆瓣读书的具体代码,供大家参考,具体内容如下 获取关于Python的全部书籍信息; 通过代码测试 request携带‘User...

python爬虫中get和post方法介绍以及cookie作用

首先确定你要爬取的目标网站的表单提交方式,可以通过开发者工具看到。这里推荐使用chrome。 这里我用163邮箱为例 打开工具后再Network中,在Name选中想要了解的网站,右侧...

python3使用requests模块爬取页面内容的实战演练

python3使用requests模块爬取页面内容的实战演练

1.安装pip 我的个人桌面系统用的linuxmint,系统默认没有安装pip,考虑到后面安装requests模块使用pip,所以我这里第一步先安装pip。 $ sudo apt i...