3 回答

TA貢獻1859條經驗 獲得超6個贊
嘗試這個:
soup.url = 'http://www.example.com'
傳遞soup
給函數后,您可以調用soup.url
get http://www.example.com
。

TA貢獻1770條經驗 獲得超3個贊
您可以從 requests 對象中獲取 url:
res = requests.get('http://www.example.com')
soup = BeautifulSoup(res.text, 'lxml')
res.url
BeautifulSoup是一個標記解析器,因此它只知道你傳遞給它的 res.text 的 html。如果網站 url 在網站的某處使用,您可以使用它BeautifulSoup來解析適當的元素并獲取該 url。
不過,這遠非最佳方法。

TA貢獻1818條經驗 獲得超3個贊
如果網頁有l(wèi)ink標簽,您可以使用
link = soup.find('link')
print (link['href'])
否則,您無法使用 BeautifulSoup 獲取 url(如果它不在任何 html 標簽中)。在這種情況下res.url,像上面所說的 @Simas 那樣使用或使用 request.Request(實際上它相同res.url但用法不同),例如:
import requests
req = requests.Request('GET', 'http://www.example.com')
url = req.url
print (url)
添加回答
舉報