我正在從各種網頁中提取員工數據。我不知道我將事先從中提取信息的網站列表。從網站上刮掉員工數據
例如:
從this site我會試圖提取上this page列出的信息。
而從this site,我需要從this page提取信息。
由於每個網站使用不同的詞/方法來顯示這些信息,任何人都會有建議,對於這個問題的一個好方法可能是隨機列表的網站?
感謝您的幫助。
我正在從各種網頁中提取員工數據。我不知道我將事先從中提取信息的網站列表。從網站上刮掉員工數據
例如:
從this site我會試圖提取上this page列出的信息。
而從this site,我需要從this page提取信息。
由於每個網站使用不同的詞/方法來顯示這些信息,任何人都會有建議,對於這個問題的一個好方法可能是隨機列表的網站?
感謝您的幫助。
第一個網站是靜態的,因此您可以簡單地使用lxml
或其他XML解析庫解析HTML,但第二個網站的內容是使用API從JavaScript動態加載的,因此在這種情況下,您可以直接從內容中獲取內容API端點(它是公開的:https://sqs-hub.s3.amazonaws.com/employee_photos/index.json),或者如果您想要更通用的解決方案,那麼您可以使用像selenium webdriver這樣的工具來模擬真實用戶,向下滾動頁面以加載動態內容,然後獲取頁面的HTML源代碼像第一種情況一樣解析它。
使用xpath ..... – Andrew
XPath或BeautifulSoup方法都可以正常工作。選擇你喜歡的工作。如果它只是你想從中獲取信息的單個頁面,那麼使用類似XPath Helper瀏覽器應用程序的東西非常方便(例如'// div [@ class ='leader-name']'可以在第二頁獲取所有名稱。 ) –
@ajcr對不起,我應該更清楚。我不會事先知道這些網站,因此它必須是一個通用的解決方案。這就是我遇到的麻煩。 – Archer