2017-02-23 77 views
1

在URL https://www.airbnb.com/rooms/3093543處,有一張地圖加載在頁面底部附近,其中包含一個表示Presidio的「鄰居」框。它存儲在標籤爲<a href="/locations/neighborhoods/479">Presidio</a>是否可以通過請求找到此鏈接文本?

我想這個得到它:

profile = BeautifulSoup(requests.get("https://www.airbnb.com/rooms/3093543").content, "html.parser")

print profile.select('div[id="hover-card"]')[0].find('a').text 
    # div[id="hover-card"] is not found 

我不知道這是可能只與檢索動態變量另一個模塊,或者是否有可能獲得請求。

+1

不,這是不可能的。它是動態加載的,你可以通過在瀏覽器中禁用javascript來檢查那樣的事情。試試例如硒。 –

回答

2

您可以通過另一個元素獲取該數據。如果需要的話請求的地圖經由

profile = BeautifulSoup(requests.get("https://www.airbnb.com/rooms/3093543").content, "html.parser") 
print profile.select('meta[id="_bootstrap-neighborhood_card"]')[0] 

和::

https://www.airbnb.pt/locations/api/neighborhood_tiles.json?ids%5B%5D=ID 

凡在上述URL中的ID是通過在第一打印的neighborhood_basic_info屬性給出 嘗試此。

相關問題