簡體   English   中英

使用 Beautiful Soup 解析 Edabit - Python

[英]Using Beautiful Soup to parse Edabit - Python

我正在嘗試編寫代碼來獲取通過解析與網站上的用戶關聯的個人 url 來完成 Edabit 的挑戰所獲得的 XP 數量。 這是我所擁有的:

from bs4 import BeautifulSoup
import requests
url = "https://edabit.com/user/xHRGAqa56TcXTLEMW"
req = requests.get(url)
soup = BeautifulSoup(req.content, 'html.parser')
div = soup.find(id="react-root")
print(div)

該查找返回的值為 none,但我真的不知道為什么。 我認為該網站是用 meteor 制作的,這可能會導致問題?

非常感謝任何幫助。

當網站上有動態內容時會發生這種情況,然后在瀏覽器中執行 javascript 時加載這些內容。

您可以在瀏覽器中查看您網頁的頁面來源,以查看標簽是否存在。

由於您的腳本不是瀏覽器,而只是從網站獲取網頁的程序,這就是您的腳本中未顯示內容的原因。

如果您希望在腳本中執行 javascript,您可以設置諸如splash服務器之類的東西。

另一種方法是檢查 javascript 在您的瀏覽器中發出的網絡請求以加載該內容(通常是 API 請求)並發出相同的請求以從 API 獲取內容,而不是直接從瀏覽器抓取它

希望能幫助到你。

沒有 output 表示soup.find 與您搜索的任何ID 都不匹配。 再次正確檢查 html 文件。 它可能會起作用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM