234150476 发表于 2020-11-26 02:23

分享一个获取url重定向后的链接的技巧

本帖最后由 234150476 于 2020-11-26 02:24 编辑

## 案例分析 需要访问一个链接,这个链接访问后会重定向到一个很大的视频资源的链接上,需要拿到重定向后的链接
## 遇到问题 使用requests和response去访问链接然后使用requests.url()和response.geturl()这两个方法会出现一直在加载,原因是这两个方法会将跳转后的url内容完全加载完,但这里跳转后的链接是一个2G的视频资源
## 解决方案
```python
import urlfetch as urlfetch
url="http://***.*****.***"
response = urlfetch.fetch(url, follow_redirects=False)
location = response.headers['location']
print(location)
```
* 这样就不需要完全加载网页的资源就能拿到跳转后的链接了

234150476 发表于 2020-11-26 15:38

hjlarry 发表于 2020-11-26 09:43
但是网页也可能使用其他方式来实现跳转吧?并不一定都用请求头的方式吧?

只要是302跳转就必须根据http协议的要求在请求头标记跳转目标,除非是js跳转,但js跳转很浪费系统资源

hjlarry 发表于 2020-11-26 17:22

234150476 发表于 2020-11-26 15:38
只要是302跳转就必须根据http协议的要求在请求头标记跳转目标,除非是js跳转,但js跳转很浪费系统资源

好像还有一种不常见的跳转方式是在<meta>标签中

不苦小和尚 发表于 2020-11-26 07:37

有用,学习了收藏了

luojp52pojie520 发表于 2020-11-26 07:42

确实这么干过

qihang5518 发表于 2020-11-26 08:24

感谢分享学习经验

senooo 发表于 2020-11-26 08:42

感谢大佬 学习了

Yusica 发表于 2020-11-26 08:47

学到了,每天学习一个小技巧

诸葛思清 发表于 2020-11-26 09:00


有用,学习了收藏了

★☆CNVIP☆★ 发表于 2020-11-26 09:42

感谢分享

hjlarry 发表于 2020-11-26 09:43

但是网页也可能使用其他方式来实现跳转吧?并不一定都用请求头的方式吧?

SpecteRz 发表于 2020-11-26 10:50

收藏了,应该会有用的:keai
页: [1] 2
查看完整版本: 分享一个获取url重定向后的链接的技巧