如何向 urllib2 开启程序添加标题?

How do I add a header to urllib2 opener?(如何向 urllib2 开启程序添加标题?)
本文介绍了如何向 urllib2 开启程序添加标题?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

cj = cookielib.CookieJar()opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))opener.open('http://abc.com')opener.open('http://google.com')

如您所见,我使用 opener 访问不同的网站,使用 cookie jar.我可以设置一个标头,以便每次访问网站时都应用标头吗?

解决方案

你可以直接将headers添加到build_opener返回的OpenerDirector对象.从 urllib2 docs 中的最后一个示例:

<块引用>

OpenerDirector 会自动为每个请求添加一个 User-Agent 标头.要改变这一点:

导入urllib2opener = urllib2.build_opener()opener.addheaders = [('用户代理', 'Mozilla/5.0')]opener.open('http://www.example.com/')

<块引用>

另外,请记住,在将请求传递给 urlopen()(或 OpenerDirector.open())时会添加一些标准标头(Content-Length、Content-Type 和 Host).

cj = cookielib.CookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))    
opener.open('http://abc.com')
opener.open('http://google.com')

As you can see, I use opener to visit different websites, using a cookie jar. Can I set a header so that each time a website is it, the header is applied?

解决方案

You can add the headers directly to the OpenerDirector object returned by build_opener. From the last example in the urllib2 docs:

OpenerDirector automatically adds a User-Agent header to every Request. To change this:

import urllib2
opener = urllib2.build_opener()
opener.addheaders = [('User-agent', 'Mozilla/5.0')]
opener.open('http://www.example.com/')

Also, remember that a few standard headers (Content-Length, Content-Type and Host) are added when the Request is passed to urlopen() (or OpenerDirector.open()).

这篇关于如何向 urllib2 开启程序添加标题?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

本站部分内容来源互联网,如果有图片或者内容侵犯了您的权益,请联系我们,我们会在确认后第一时间进行删除!

相关文档推荐

Seasonal Decomposition of Time Series by Loess with Python(Loess 用 Python 对时间序列进行季节性分解)
Resample a time series with the index of another time series(使用另一个时间序列的索引重新采样一个时间序列)
How can I simply calculate the rolling/moving variance of a time series in python?(如何在 python 中简单地计算时间序列的滚动/移动方差?)
How to use Dynamic Time warping with kNN in python(如何在python中使用动态时间扭曲和kNN)
Keras LSTM: a time-series multi-step multi-features forecasting - poor results(Keras LSTM:时间序列多步多特征预测 - 结果不佳)
Python pandas time series interpolation and regularization(Python pandas 时间序列插值和正则化)