我有时需要使用提供的Beautiful Soup和Requests URL进行解析:
当然,这些网址通常会“解析”为规范网址,有些网址为http://real-website.com/page.html
。如何获取解析/重定向链中的最后一个URL?
我的代码通常如下所示:
from bs4 import BeautifulSoup
import requests
response = requests.get(url)
soup = bs4.BeautifulSoup(response.text, from_encoding=response.encoding)
canonical_url = response.??? ## This is what I need to know
请注意,我并不是要查询http://bit.ly/bllsht
以查看它的位置,而是当我使用Beautiful Soup来解析它返回的页面时,还获取规范URL是重定向链中的最后一个。
感谢。
答案 0 :(得分:6)
它位于url
对象的response
属性中。
>>> response = requests.get('http://bit.ly/bllsht')
>>> response.url
> u'http://www.thenews.org/sports/well-hey-there-murray-state-1-21-11-1.2436937'
您可以在“Quick Start” page 。
中轻松找到此信息