# 字符串正则查找及切片提取 — header信息切割
headers_str = '''Host: www.sse.com.cn
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:43.0) Gecko/20100101 Firefox/43.0
Referer: http://www.sse.com.cn/assortment/
'''
提取冒号:前的key和后面的value;
headers_list = re.findall(r'(.*?):(.*)', headers_str)
headers = {}
for item in headers_list:
headers[item[0]] = item[1]
但当发送请求时,会提示无效的header; 经查看header对象的value中有空格;
python之re.findall
// findall(pattern, string, flags=0)
findall(pattern, string, flags=0) Return a list of all non-overlapping matches in the string. If one or more capturing groups are present in the pattern, return a list of groups; this will be a list of tuples if the pattern has more than one group. Empty matches are included in the result.
# 去掉空格的方法
string.strip()
string.lstrip()
string.replace( ' ' , '' )
tmp_str = string.split()
str = ''.join(tmp_str) #用一个空字符串join列表
# 搞定正确headers,选取任一方法
for item in headers_list:
headers[item[0]] = item[1].strip()
print("-------------------------------------------------------------------------")
print("-------------------------------------------------------------------------")
print(headers)
成功发送请求