首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

python如何在重定向后获得最终目的地

在Python中,可以使用requests库来发送HTTP请求并获取重定向后的最终目的地。以下是一个示例代码:

代码语言:txt
复制
import requests

def get_final_destination(url):
    response = requests.get(url, allow_redirects=False)
    if response.status_code == 301 or response.status_code == 302:
        redirect_url = response.headers['Location']
        return get_final_destination(redirect_url)
    else:
        return response.url

# 示例用法
url = "http://example.com"
final_destination = get_final_destination(url)
print("最终目的地:", final_destination)

在上述代码中,我们定义了一个get_final_destination函数,它接受一个URL作为输入,并返回重定向后的最终目的地URL。该函数使用requests.get方法发送HTTP请求,并通过allow_redirects=False参数禁止自动重定向。如果返回的状态码是301或302,表示发生了重定向,我们可以通过response.headers['Location']获取重定向的目标URL,并递归调用get_final_destination函数来获取最终目的地URL。如果没有发生重定向,直接返回response.url作为最终目的地URL。

这种方法适用于大多数情况下的重定向,但并不适用于所有情况。如果重定向链非常复杂或存在其他特殊情况,可能需要使用更高级的技术来处理。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券