Как получить и сохранить DOM страницы.
-
Не получилось применить. Результат пустой. Что я делаю не так. Есть возможность сделать видео на примере этой ссылки translate.googleusercontent.com/translate_p?act=url&hl=ru&ie=UTF8&prev=_t&rurl=translate.google.com&sl=en&tl=ru&u=http://foodminded.blog.com/2016/02/16/foodservice-equipment-hot-food-holding-moisture-control/
-
Код такой
frame("translate.googleusercontent.com/translate_p?act=url&hl=ru&ie=UTF8&prev=_t&rurl=translate.google.com&sl=en&tl=ru&u=http://foodminded.blog.com/2016/02/16/foodservice-equipment-hot-food-holding-moisture-control/").xml()!
VAR_FRAME_CONTENT = _result()
-
Ошибка в том, что вы используете в качестве аргумента функции frame не url фрейма, а урл страницы, где фрейм расположен.
На странице может быть несколько фреймов и чтобы выбрать, с каким из них нужно взаимодействовать, в функцию передается урл фрейма или его часть.Также обратите внимание, что у фреймов с переводом часто разный урл:
translate.googleusercontent.com/translate_p
translate.googleusercontent.com/translate_un
Вот видео:
-
Спасибо. Все работает.
-
Может кто подскажет как получить DOM страницы через GET запрос, если она формируется через скрипты? Страницу получаю, но вижу в ответе только включения скриптов в теле :(
-
@bigorat, что-то мне подсказывает, что никак. Кому-то придется выполнять хотя бы частично эти скрипты.
-
@bigorat DOM - никак, что со скриптами, что без скриптов. Для того и существуют два подхода - на запросах или на браузере. Только браузер на основе HTML кода создаёт DOM. И Javascript потом будет работать с DOM. Текстовый ответ от GET запроса можно парсить как угодно. Но даже если получить .js файлы отдельными запросами, то Javascript-у будет работать не с чем.
-
@bigorat Однако это не значит, что одними HTTP запросами не обойдешься для вытягивания нужных данных или произведения нужных действий. Просто потребуется работа на более низком уровне и более высокая квалификация. Зачастую подзапросы возвращают "рафинированные" результаты, которые читать проще, чем ковырять результирующий DOM в браузере.
-