python请求链接头

前端之家收集整理的这篇文章主要介绍了python请求链接头前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试找到捕获响应头下列出的链接的最佳方法,就像这个,我正在使用 python请求模块.下面是在 Python Requests页面上有Link Headers部分的链接
docs.python-requests.org/en/latest/user/advanced/

但是,在我的情况下,我的响应标头包含如下链接

{'content-length': '12276','via': '1.1 varnish-v4','links': '<http://justblahblahblah.com/link8.html>;rel="last">,<http://justblahblahblah.com/link2.html>;rel="next">','vary': 'Accept-Encoding,Origin'}

请注意>在“最后”之后,在请求示例中并非如此,我似乎无法弄清楚如何解决这个问题.

解决方法

您可以手动解析标头的值.为了简化操作,您可能希望使用请求的解析功能 parse_header_links作为参考.

或者你可以做一些查找/替换并使用原始的parse_header_links

In [1]: import requests

In [2]: d = {'content-length': '12276',Origin'}

In [3]: requests.utils.parse_header_links(d['links'].rstrip('>').replace('>,<',',<'))
Out[3]:
[{'rel': 'last','url': 'http://justblahblahblah.com/link8.html'},{'rel': 'next','url': 'http://justblahblahblah.com/link2.html'}]

如果>和<之间可能有一个或两个空格.那么你需要用正则表达式替换.

猜你在找的Python相关文章