我正在嘗試使用 Python/Selenium 從該網站獲取所有資訊: https ://bitinfocharts.com/top-100-richest-bitcoin-addresses.html
我已成功獲取所有資訊,但問題是它有 100 個元素,而我只得到前 19 個(第一次加載頁面時可以在 Chromium 視窗中看到的元素)。
我試影像這樣向下滾動頁面:
driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")
driver.find_element_by_tag_name('body').send_keys(Keys.END)
driver.find_element_by_tag_name('body').send_keys(Keys.PAGE_DOWN)
等等。它正在作業,但沒有任何改變。我仍然只得到 100 個中的 19 個元素。我還嘗試更改視窗大小、無頭、最大化等引數,但沒有任何改變。
chrome_driver_binary = "C:\\scraping\\selenium\\chromedriver.exe"
options = webdriver.ChromeOptions()
options.add_argument('--lang=en')
options.add_argument("--disable-extensions")
options.add_argument('--headless')
options.add_argument('--window-size=1920x1480')
options.binary_location = "C:\\Program Files (x86)\\BraveSoftware\\Brave-Browser\\Application\\brave.exe"
如果我在 Selenium 創建的 chrome 視窗中手動編輯主代碼,我可以看到這里有所有元素。我也可以看到視窗如何向下滾動到底部。
那么,問題出在哪里?
這是成功捕獲所有資料的主要代碼(但只有 19 個第一個元素)。我把它放在以防萬一它很重要。
TABLE_RESULT_BTC_TOP100 = soup1.find('table', id="tblOne").find('tbody')
for tr_tag in TABLE_RESULT_BTC_TOP100.find_all('tr'):
uj5u.com熱心網友回復:
第一19行在一個表中,然后以下行在另一個表中。你必須抓住兩張桌子。
此外,不需要selenium.
這是獲取所有100行的方法。
import requests
import pandas as pd
url = "https://bitinfocharts.com/top-100-richest-bitcoin-addresses.html"
headers = {
"User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:99.0) Gecko/20100101 Firefox/99.0",
}
df = pd.read_html(requests.get(url, headers=headers).text, flavor="lxml")[2:4]
df = pd.concat(df)
print(df)
輸出:
0 1 ... Outs Unnamed: 0
0 NaN NaN ... 449.0 1.0
1 NaN NaN ... 78.0 2.0
2 NaN NaN ... 77.0 3.0
3 NaN NaN ... NaN 4.0
4 NaN NaN ... NaN 5.0
.. ... ... ... ... ...
76 96.0 bc1qxv55wuzz4qsfgss3uq2zwg5y88d7qv5hg67d2d ... NaN NaN
77 97.0 bc1qmjpguunz9lc7h6zf533wtjc70ync94ptnrjqmk ... NaN NaN
78 98.0 bc1qyr9dsfyst3epqycghpxshfmgy8qfzadfhp8suk ... NaN NaN
79 99.0 bc1q8qg2eazryu9as20k3hveuvz43thp200g7nw7qy ... NaN NaN
80 100.0 bc1q4ffskt6879l4ewffrrflpykvphshl9la4q037h ... NaN NaN
[100 rows x 20 columns]
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/468302.html
標籤:python-3.x 硒 硒网络驱动程序 网页抓取 美丽的汤
