Страница 3 из 3

Re: Работа с HTML

Добавлено: 19 фев 2018, 22:06
IvanLis
> Вопрос только остался-как svg от туда изъять ?

Я если честно сказать сам не знаю, но думаю это вполне возможно.
Просто сейчас времени нет.
В профайлере же код видно, надеюсь, что знающие подскажут

Re: Работа с HTML

Добавлено: 20 фев 2018, 06:28
Sergey Ivanov
Да, я тоже этот код нашёл, но в :labview: его никак не получить. Точнее у меня не получается. :cry:

Re: Работа с HTML

Добавлено: 20 фев 2018, 12:01
Sergey Ivanov
В общем, эксперименты привели к тому, что если сохранить страницу на комп и открыть её через GET, например, то данные столбцов там есть)

Re: Работа с HTML

Добавлено: 20 фев 2018, 12:11
Sergey Ivanov
Теперь только не знаю как сохранить полностью страницу. Наподобие как это делает chrome, например, через "сохранить как..."

Re: Работа с HTML

Добавлено: 20 фев 2018, 14:06
FireFly
Тут главное понимать разницу между исходным HTML кодом страницы и тем что вы видите в панели разработчика (F12).

Исходный код страницы (который вы получаете в LabVIEW) формируется на стороне сервера и может и не содержать необходимого SVG изображения. А может и содержать - зависит от логики серверного приложения.

Итоговая страница которую вы демонтрируете на скриншотах - формируется уже на стороне клиента, посредством многочисленного JavaScript и в частности подхода AJAX, с помощью движка браузера. И теоретически итоговая страница (DOM-дерево) может существенно различаться в разных браузерах.

Соответсвенно в LabVIEW вы можете посмотреть только исходный HTML код страницы, т.к. браузерным движком он обрабатываться не будет. Соответсвенно сохранить итоговое DOM-дерево LabVIEW также сам не сможет. Для такого решения необходимо использовать функционал какого-либо браузера.

Конкретно в вашей задаче необходимо найти, откда берётся SVG:
1) Приходит готовым со стороны сервера в исходном HTML-коде (маловероятно)
2) Данные приходят вместе с исходным HTML-кодом, а SVG строит JavaScript из этих данных - в таком случе удобнее работать сразу с исходными данными
3) Исходная страница не имеет данных и получает их отдельным запросом например в виде JSON (самый вероятный вариант) - необходимо искать данный дополнительный запрос, в случае успеха можно будет также работать с голыми данными. Возможно вы даже найдёте в этих дополнительных запросах какую-то логику и например обнаружите что данные можно получать с помощью запросов к их API например в виде yobit.net/API/LIZA/RUR

Re: Работа с HTML

Добавлено: 20 фев 2018, 14:17
Sergey Ivanov
Спасибо за подробный ответ. Буду пробовать разбираться.
Только хром через сохранить сохраняет информацию об искомых столбцах. Эксплорер этого не делает.

Re: Работа с HTML

Добавлено: 20 фев 2018, 14:25
Sergey Ivanov
А api есть, на сколько я понимаю.
https://www.yobit.net/ru/api/

Но интереснее вытащить данные не используя api.

Re: Работа с HTML

Добавлено: 20 фев 2018, 14:49
FireFly
Загрузить страницу во внешнем браузере
Выполнить javascript код, который запросит данные (через api) и встроит в DOM-дерево svg с графиками
Сохранить полученную страницу как файл
Получить HTML-код файла
Достать SVG
Распарсить его и достать нужные данные

Лучше чем получить данные в готовом виде через API?

Re: Работа с HTML

Добавлено: 20 фев 2018, 20:57
Sergey Ivanov
Выбор очевиден. Спасибо!

Re: Работа с HTML

Добавлено: 18 мар 2018, 21:34
rushonda
IvanLis, а нельзя скинуть исходник по извлечению столбцов?

Re: Работа с HTML

Добавлено: 19 мар 2018, 08:14
IvanLis
rushonda писал(а):IvanLis, а нельзя скинуть исходник по извлечению столбцов?
Все что есть, выложено здесь.
Никаких примеров я не делал.