You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Python爬取CoinMarketCap加密货币价格返回None该如何解决

问题原因排查

  • 第一,动态ID失效:CoinMarketCap前端使用自动化构建工具生成元素id,priceValue___11gHJ这类带随机哈希后缀的id会随平台版本更新变化,你写代码时查到的id现在已经失效。
  • 第二,客户端渲染数据未加载:requests库只能拿到页面初始静态HTML,CoinMarketCap的价格数据是通过JS异步请求接口加载后渲染到页面的,初始HTML里不存在你要找的价格元素。

可行解决方案

方案1:提取静态HTML内嵌的结构化数据(改动最小,无需额外工具)

初始HTML里会嵌入JSON-LD格式的页面元数据,里面包含价格信息,直接提取解析即可,适配你原有的技术栈:

from bs4 import BeautifulSoup as S
import requests
import json

c = input('enter your coin')
url = f'https://coinmarketcap.com/currencies/{c}/'

headers = {'user-agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36'}

r = requests.get(url,headers=headers)
soup = S(r.content,'html.parser')
# 提取内嵌的结构化元数据
json_ld = soup.find('script', type='application/ld+json').string
data = json.loads(json_ld)
price = data[0]['currentExchangeRate']['price']
print(f'the price of {c} now is {price}')

方案2:调用官方公开API(最稳定)

CoinMarketCap提供免费开发者API,不需要爬页面,直接请求接口拿结构化数据,不会出现元素定位失效的问题,免费额度足够个人日常使用,只需注册账号获取API密钥即可使用:

import requests
API_KEY = "你自己申请的API密钥"
c = input('enter your coin')
url = f"https://pro-api.coinmarketcap.com/v1/cryptocurrency/quotes/latest?slug={c}"
headers = {
  "X-CMC_PRO_API_KEY": API_KEY,
  "user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"
}
r = requests.get(url, headers=headers)
data = r.json()
price = data["data"][list(data["data"].keys())[0]]["quote"]["USD"]["price"]
print(f'the price of {c} now is {price}')

方案3:改用JS渲染引擎爬取页面(适合需要模拟用户操作的场景)

用Selenium、Playwright这类可以运行JS的自动化工具加载完整页面后再定位元素,定位时不要用带哈希的id,用更稳定的自定义属性即可:

from selenium import webdriver
from selenium.webdriver.common.by import By
c = input('enter your coin')
url = f'https://coinmarketcap.com/currencies/{c}/'
driver = webdriver.Chrome()
driver.get(url)
price_ele = driver.find_element(By.CSS_SELECTOR, '[data-testid="coin-price"]')
print(price_ele.text)
driver.quit()

内容的提问来源于stack exchange,提问作者data data

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.13 20:45:01