如何从请求中获取原始url

2024-06-01 04:39:44 发布

您现在位置:Python中文网/ 问答频道 /正文

在执行以下操作时:

>>> res=requests.get('http://www.hulu.com/return-of-the-one-armed-swordsman')
>>> res.url
u'http://www.hulu.com/watch/800769'

如何获取从res调用的原始url。也就是说,如何让res对象返回http://www.hulu.com/return-of-the-one-armed-swordsman


Tags: ofthecomhttpurlgetreturnwww
1条回答
网友
1楼 · 发布于 2024-06-01 04:39:44

requests保留重定向请求的历史记录。。。从那上面取第一个条目。。。

import requests

res=requests.get('https://httpbin.org/status/301')
res.url
# https://httpbin.org/get
res.history[0].url
# https://httpbin.org/status/301

注意-您可能需要满足没有重定向发生的情况,例如:

url = res.history[0].url if res.history else res.url

当然-另一种方法是将URL保存在一个变量中,并将其传递给requests.get-然后您就知道需要从什么开始了。。。

相关问题 更多 >