【发布时间】:2022-01-15 05:13:54
【问题描述】:
我开始了一个迷你项目,我想检索第一页上前 100 个硬币的硬币名称、价格、硬币市值、流通供应量和数量。到现在为止,(在问了几个问题并得到了很好的输入之后)我能够在第一页检索所有硬币名称。然而,对于价格,我只能得到前 11 个名字,而代币市值我什么也得不到。我真的很想收集数据,这样我就可以开始做一些数据分析,但我总是碰壁。有人可以进一步指出我正确的方向吗?我知道有一个 api,但我想扩展我的知识。
import requests
from lxml import html
from selenium import webdriver
url = "https://coinmarketcap.com/"
driver = webdriver.Chrome()
driver.get(url)
coin_name = [name.text for name in driver.find_elements_by_xpath('//td[3]/a[@class="cmc-link" and starts-with(@href, "/currencies/")]')]
print(coin_name)
print(len(coin_name))
price = [p.text for p in driver.find_elements_by_xpath('//td[4]/div/a[@class = "cmc-link" and contains(@href, "/markets/")]')]
print(price)
print(len(price))
market_cap = [m.text for m in driver.find_elements_by_xpath('//p[@class = "cmc-link" and contains(@style, "white-space:nowrap")]//p[@color="text"]')]
print(len(market_cap))
【问题讨论】:
标签: python html selenium-webdriver web-scraping