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爬取知乎图片代码实现解析

Python爬取知乎图片代码实现解析

首先,需要获取任意知乎的问题,只需要你输入问题的ID,就可以获取相关的页面信息,比如最重要的合计有多少人回答问题。 问题ID为如下标红数字 编写代码,下面的代码用来检测用户输入的是否是...

浅谈Scrapy框架普通反爬虫机制的应对策略

简单低级的爬虫速度快,伪装度低,如果没有反爬机制,它们可以很快的抓取大量数据,甚至因为请求过多,造成服务器不能正常工作。而伪装度高的爬虫爬取速度慢,对服务器造成的负担也相对较小。 爬虫与...

python编程实现12306的一个小爬虫实例

python编程实现12306的一个小爬虫实例

本文思路主要来源于实验楼的教程,但是一些具体的一些细节是我自己发现的,比如哪里获得站点对应的3位英文编号,怎么获得这个查询的url 本文用到的库主要有requests(获取url的内容)...

python爬虫教程之爬取百度贴吧并下载的示例

测试url:http://tieba.baidu.com/p/27141123322?pn=begin  1end   4复制代码 代码如下:import...

详解Selenium+PhantomJS+python简单实现爬虫的功能

Selenium 一、简介 selenium是一个用于Web应用自动化程序测试的工具,测试直接运行在浏览器中,就像真正的用户在操作一样 selenium2支持通过驱动真实浏览器(Fi...