我正在嘗試從網站上抓取一些資料 - https://boardgamegeek.com/browse/boardgame/page/1
在獲得游戲名稱和分數后,我還想打開這些頁面中的每一個,找出每款游戲需要多少玩家。但是,當我進入每個游戲時,URL 都有一個唯一編號。例如:當我點擊第一個游戲 - Gloomhaven 時,它會打開頁面 - https://boardgamegeek.com/boardgame/**174430**/Gloomhaven (唯一編號以粗體標記)。
random_no = r.randint(1000,300000)
url2 = "https://boardgamegeek.com/boardgame/" str(random_no) "/" name[0]
page2 = requests.get(url2)
if page2.status_code==200:
print("this is it!")
break
所以我生成了一個亂數并將其插入 URL 并讀取回應。但是,即使是錯誤的數字也會給出正確的回應,但不會打開正確的頁面。
這個唯一編號是什么?我怎樣才能獲得有關這方面的資訊?或者我可以使用替代方法來獲取我需要的資訊嗎?
提前致謝。
uj5u.com熱心網友回復:
嘗試這個
import requests
import bs4
s = bs4.BeautifulSoup(requests.get(
url = 'https://boardgamegeek.com/browse/boardgame/page/1',
).content, 'html.parser').find('table', {'id': 'collectionitems'})
urls = ['https://boardgamegeek.com' x['href'] for x in s.find_all('a', {'class':'primary'})]
print(urls)
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/370849.html
上一篇:將Django和Bootstrap5Modal與Ajax結合使用
下一篇:使用python從網站上抓取價格
