как получить данные ajax

асс

Мой дом здесь!
Регистрация
13 Окт 2006
Сообщения
762
Реакции
230
Всем добрый вечер.

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


Нужно все, делал курлом но выдает только часть, там генерация идет на лету.

Нужна ссылка сразу на все валюты.

Помогите составить запрос.

Спасибо.
 
Какой именно запрос не получается сделать curl-ом?
 
Например код выдаст страницу, но там данные не полностью.
Если посмотреть исходный код страницы, в браузре то там выводит все полностью.

<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/4.0 (compatible; BTCE PHP client; ');
curl_setopt($ch, CURLOPT_URL, 'Для просмотра ссылки Войди или Зарегистрируйся
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);

echo $res = curl_exec($ch);

?>
 
У ебит есть паблик апи, почему бы оттуда не брать
Код:
https://yobit.net/api/3/info
из этих данных уже можно генерировать ссылки вида
Код:
https://yobit.net/ru/trade/DASH/BTC
 
Вот эти данные берет только десяток строк, а надо получить все
 

Вложения

  • ччччччччччччччччччч.png
    ччччччччччччччччччч.png
    17,1 KB · Просмотры: 8
Например код выдаст страницу, но там данные не полностью.
Если посмотреть исходный код страницы, в браузре то там выводит все полностью.

<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/4.0 (compatible; BTCE PHP client; ');
curl_setopt($ch, CURLOPT_URL, 'Для просмотра ссылки Войди или Зарегистрируйся
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);

echo $res = curl_exec($ch);

?>
А через просмотр исходного кода страницы (Ctrl + U) эти данные есть?
Если они js-ом создаются, то тебе придется либо headless браузер прикручивать, либо запросы инспектировать.
Ну или как правильно тут подсказали - заюзай API.
 
Через API не взять то что надо, я бы рад.

Через (Ctrl + U) все есть. Скорее всего что то не хватает в запросе курла.
 
Выполняешь POST запрос со следующим содержимым:
Код:
Base: top / btc / eth / doge / waves / usd / rur
Method: change_market_base
CSRF_TOKEN: empty
Locale: ru / en / cn
PID: 40001
URL: https://yobit.net/ajax/system_markets.php
Пример запроса:
Код:
curl --data "method=change_market_base&csrf_token=&locale=ru&base=top&pid=40001" https://yobit.net/ajax/system_markets.php

Надеюсь дальше сам разберешься.
Ну и про cookies не стоит забывать.
А то могут и блокнуть запросы с твоего ip.
 
Через API не взять то что надо, я бы рад..
Почему не взять, если нужны цена на покупку и для продажу, и другие данные, то рекурсивно обходишь каждую пару по такой ссылке

вот пример ссылки, пары разделены через черту:
Код:
https://yobit.net/api/3/ticker/btc_usd-xpy_btc-xsp_btc-kobo_btc

вот пример ответа, там все что надо есть.

Код:
{"high":12405.76020003,"low":11895,"avg":12150.38010001,"vol":1333990.76587135,"vol_cur":110.27112456,"last":12120,"buy":12120.00000000,"sell":12162.00000000,"updated":1517164454}


мой скрипт по 50 пар за раз объединяет в один запрос итого примерно 130+1(инфо) запросов, чтобы забрать все данные с биржи ебит по всем торговым парам.
 
Почему не взять, если нужны цена на покупку и для продажу, и другие данные, то рекурсивно обходишь каждую пару по такой ссылке


Там нет данных в процентах -12% либо 100?
Вся заморочка в том что мне нужно получить изменения цены за отрезок времени. а они выводятся только на морде.

Для коинмаркет на пример Для просмотра ссылки Войди или Зарегистрируйся

Есть все как надо за час, 24 часа и 7 дней. На ебите такого увы не нашел.

"percent_change_1h": "-0.31",
"percent_change_24h": "1.66",
"percent_change_7d": "0.49",
 
Назад
Сверху