Если вы занимаетесь торговлей криптовалютой, созданием панелей мониторинга или проведением маркетинговых исследований, получение цен криптовалют в реальном времени имеет решающее значение. Хотя CoinMarketCap предоставляет значительный объем этих данных на своем веб-сайте, он не предлагает бесплатный и открытый API для живых цен. Вот где веб-скрапинг становится полезным.

В этой статье мы покажем вам, как извлекать актуальные цены криптовалют из CoinMarketCap с помощью Python. Мы проведем вас через отправку запросов, парсинг HTML и извлечение данных для популярных криптовалют, таких как Bitcoin, Ethereum и других топовых монет. Вы также узнаете, как избежать блокировки с помощью таких инструментов, как Crawlbase Умный прокси-сервер ИИ и как экспортировать ваши данные для будущего использования.

Итак, начнем.

Содержание

  1. Зачем использовать CoinMarketCap для получения цен на криптовалюты?
  2. Инструменты, необходимые для начала работы
  • Python и необходимые библиотеки
  • Установка BeautifulSoup и запросов
  1. Пошаговое руководство по извлечению цен на криптовалюты на CoinMarketCap
  • Отправить HTTP-запрос в CoinMarketCap
  • Анализ HTML с помощью BeautifulSoup
  • Извлечь актуальные цены на криптовалюту
  1. Избегайте блокировки: используйте Crawlbase Умный прокси-сервер ИИ
  2. Экспорт данных в CSV или JSON
  3. Заключение
  4. Часто задаваемые вопросы (FAQ)

Зачем использовать CoinMarketCap для получения цен на криптовалюты?

CoinMarketCap — самый популярный сайт для отслеживания цен криптовалют, рыночной капитализации, объема и рейтингов. Он обновляет цены в режиме реального времени и имеет тысячи монет. Это основной источник данных о криптовалютах.

Однако официальный API CoinMarketCap имеет ограничения на бесплатный доступ, а для данных в реальном времени требуется платный план. Если вы разработчик, исследователь или криптоэнтузиаст, ищущий бесплатный и гибкий доступ к данным о ценах в реальном времени, веб-скрапинг — это то, что вам нужно.

Скрапинг цен криптовалют из CoinMarketCap может быть очень полезен для различных целей. На следующем изображении показаны некоторые распространенные случаи использования с соответствующими примерами для скрэпинга цен криптовалют.

Распространенные варианты использования данных о ценах на криптовалюту

С помощью Python, BeautifulSoup и интеллектуальных прокси вы можете легко и надежно извлекать эти данные, не платя за дорогостоящие API.

Инструменты, необходимые для начала работы

Прежде чем мы соберем цены криптовалют с CoinMarketCap, давайте настроим необходимые нам инструменты и библиотеки. Мы будем использовать Python, потому что он простой, мощный и имеет отличные библиотеки для веб-скрапинга.

Python и необходимые библиотеки

Убедитесь, что у вас установлен Python. Вы можете загрузить его с python.org.

Мы будем использовать две основные библиотеки Python:

  • Запросы – для отправки HTTP-запросов и получения HTML-кода страницы
  • КрасивыйСуп – для анализа и извлечения данных из HTML

🔧 Установка BeautifulSoup и запросов

Вы можете установить обе библиотеки с помощью pip, который является менеджером пакетов Python. Откройте терминал или командную строку и выполните:

1
Pip запрашивает установку beautifulsoup4

После установки вы готовы начать сбор криптовалютных данных с CoinMarketCap.

Пошаговое руководство по извлечению цен на криптовалюты на CoinMarketCap

Теперь, когда ваша настройка готова, давайте соберем цены криптовалют в реальном времени с CoinMarketCap. Мы пойдем пошагово, используя Python и BeautifulSoup.

Отправить HTTP-запрос в CoinMarketCap

Для начала нам необходимо отправить запрос на сайт CoinMarketCap и получить содержимое страницы.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
Импортировать Запросы

URL = "https://coinmarketcap.com/"
заголовки = {
«Пользователь-агент»: "Мозилла/5.0"
}

ответ = запросы.получить(url, заголовки=заголовки)

# Проверьте, был ли запрос успешным
if ответ.status_code == 200:
Распечатать("Страница успешно загружена!")
еще:
Распечатать(«Не удалось загрузить страницу».)
Always use headers like User-Agent to mimic a real browser.

Анализ HTML с помощью BeautifulSoup

Получив содержимое страницы, мы можем проанализировать его с помощью BeautifulSoup.

1
2
3
от bs4 Импортировать КрасивыйСуп

суп = КрасивыйСуп(ответ.текст, "html.парсер")

Извлечение актуальных цен на криптовалюты из CoinMarketCap

Давайте извлечем название и текущую цену 10 лучших криптовалют.

CoinMarketCap использует динамические HTML-классы, поэтому вам может потребоваться проверить исходный код страницы, чтобы скорректировать имена классов.

Вот рабочий пример:

1
2
3
4
5
6
7
# Найдите строки таблицы, содержащие монеты
строки = суп.выбрать("таблица tbody tr")

для строка in строки[:10]: # Топ 10 монет
имя = строка.выберите_один("p.coin-item-name").текст
цена = строка.выберите_один("div.sc-142c02c-0.lmjbLF").текст
Распечатать(f"{название}: {цена}")

Вывод:

1
2
3
4
5
6
7
8
9
10
Bitcoin: $92, 477.64
Ethereum: $1, 744.77
Tether: $1.00
XRP: $2.14
БНБ: $596.63
Солана: $146.85
USDC: $1.00
Dogecoin: $0.1732
Кардано: $0.6866
ТРОН: $0.2439

Примечание: Имена классов часто меняются. Вы всегда можете щелкнуть правой кнопкой мыши → «Проверить» на странице, чтобы проверить обновленные имена классов

Избегайте блокировки: используйте Crawlbase Умный прокси-сервер ИИ

CoinMarketCap использует защиту, например, Cloudflare, для блокировки ботов. Если вы отправляете слишком много запросов, ваш IP может быть заблокирован. Чтобы исправить это, используйте Crawlbase Умный прокси-сервер ИИ. Это помогает вам собирать данные без блокировки или капч. Кроме того, вам не нужно беспокоиться о ручной смене IP-адресов, так как все это делается за вас.

Как использовать Crawlbase Умный ИИ-прокси на Python

Вот простой пример использования requests:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Импортировать Запросы
Импортировать время

# Заменить на свой Crawlbase знак
токен = "_USER_TOKEN_"
proxy_url = f"http://{токен}:@smartproxy.crawlbase.com:8012"
прокси = {
"http": proxy_url,
"https": proxy_url
}

# URL-адрес CoinMarketCap
URL = "https://coinmarketcap.com/"

# Необязательно: Подождите перед запросом
время.сна(2)

# Отправить запрос с помощью Smart AI Proxy
ответ = запросы.получить(url, прокси=прокси, проверка=Ложь)

if ответ.status_code == 200:
Распечатать(«Запрос выполнен успешно!»)
еще:
Распечатать(«Запрос не выполнен:», ответ.код_статуса)

Вы можете получить токен регистрацией on Crawlbase. С Crawlbase Благодаря Smart AI Proxy ваш парсер работает стабильно и не блокируется — даже на сайтах с надежной защитой.

Экспорт данных в CSV или JSON

В этом разделе мы рассмотрим, как экспортировать данные криптовалюты из CoinMarketCap в форматы CSV и JSON. Это полезно, когда вы хотите сохранить данные или проанализировать их позже. Мы также будем использовать Crawlbase Умный прокси-сервер ИИ для предотвращения блокировок во время сбора данных.

Шаги:

  1. Используйте Crawlbase Умный AI Proxy для отправки запросов в CoinMarketCap.
  2. Извлеките данные о криптовалюте, включая название, символ и цену.
  3. Экспортируйте данные в форматы CSV и JSON.

Вот полный код для достижения этой цели:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
Импортировать Запросы
от bs4 Импортировать КрасивыйСуп
Импортировать CSV
Импортировать JSON

# 🛡️ Crawlbase Настройка Smart AI Proxy
proxy_url = "http://_USER_TOKEN_:@smartproxy.crawlbase.com:8012"
прокси = {"http": proxy_url, "https": proxy_url}

# 🌐 URL-адрес CoinMarketCap
URL = "https://coinmarketcap.com/"

# 📥 Отправьте HTTP-запрос, используя Crawlbase Умный прокси-сервер ИИ
заголовки = {
«Пользователь-агент»: "Мозилла/5.0"
}
ответ = запросы.получить(url, заголовки=заголовки, прокси=прокси, проверка=Ложь)
суп = КрасивыйСуп(ответ.текст, "html.парсер")

# 🧠 Извлечение данных криптовалюты (Топ-10 монет)
крипто_данные = []

# Выберите строки таблицы, содержащие криптографические данные
строки = суп.выбрать('table.cmc-table tbody tr')[:10] # Получить данные для 10 лучших монет

# Проходим по каждой строке и извлекаем необходимые данные
для строка in ряды:
стараться:
имя = строка.выберите_один("p.coin-item-name").текст.полоска()
символ = строка.выберите_один('p.coin-item-symbol').текст.полоска()
цена = строка.выберите_один("div.sc-142c02c-0.lmjbLF").текст.полоска()

crypto_data.append({
"название": имя,
"условное обозначение": символ,
"цена_доллар США": цена
})
кроме Исключение as e:
Распечатать(«Пропуск строки из-за ошибки:», е)

# ✅ Экспорт данных в CSV-файл
с открытый("крипто_цены.csv", "ш", новая строка="") as csv_файл:
writer = csv.DictWriter(csv_file, fieldnames=["название", "условное обозначение", "цена_доллар США"])
писатель.writeheader()
писатель.writerows(крипто_данные)

# ✅ Экспорт данных в файл JSON
с открытый("крипто_цены.json", "ш") as json_файл:
json.dump(crypto_data, json_file, отступ=2)

Распечатать(«✅ Цены на криптовалюты сохранены в файлах «crypto_prices.csv» и «crypto_prices.json»»)

Таким образом, вы можете извлекать данные из CoinMarketCap, не подвергаясь блокировке, а функция экспорта данных позволяет легко сохранять и анализировать их позже. Если вам нужно извлечь больше данных или автоматизировать процесс, просто настройте логику соответствующим образом.

Заключение

Сбор цен криптовалют из CoinMarketCap с помощью Python — это умный способ оставаться в курсе нестабильных финансовых рынков. С помощью всего нескольких строк кода вы можете отслеживать текущие цены, экспортировать данные и использовать их для анализа или создания криптоинструментов.

Однако помните, что такие сайты, как CoinMarketCap, имеют встроенную защиту от ботов. Вот почему использование таких инструментов, как Crawlbase Умный прокси-сервер ИИ очень полезно. Это делает ваш парсинг гладким и позволяет избежать IP-блокировок и капч.

Независимо от того, являетесь ли вы разработчиком, трейдером или аналитиком данных, это руководство даст вам простой способ начать работу по извлечению криптографических данных с помощью Python. Зарегистрироваться сейчас.

Часто задаваемые вопросы (FAQ)

Сбор публичных данных из CoinMarketCap обычно разрешен для личного или образовательного использования. Однако всегда проверяйте их Условия Предоставления Услуг прежде чем использовать полученные данные в коммерческих проектах, чтобы избежать юридических проблем.

В. Почему меня блокируют при парсинге CoinMarketCap?

CoinMarketCap использует инструменты безопасности, такие как Cloudflare, для блокировки ботов. Если вы отправляете слишком много запросов с одного IP-адреса, вы можете столкнуться с CAPTCHA или блокировками. Чтобы решить эту проблему, используйте Crawlbase Умный прокси-сервер на основе искусственного интеллекта, который автоматически меняет IP-адреса и обходит защиту от ботов.

В. Как часто я могу собирать данные о ценах на криптовалюты?

Если вы выполняете скрейпинг вручную, можно безопасно извлекать данные каждые несколько минут, чтобы избежать блокировки. Crawlbase Smart AI Proxy позволяет масштабировать сбор данных с большей скоростью и частотой, что делает его идеальным для отслеживания криптографических данных в режиме реального времени.