#python #web-scraping #lxml
#python #веб-очистка #lxml
Вопрос:
Я очищаю веб-страницу. Веб-страница состоит из 50 записей. После 50 записей появляется кнопка «Загрузить больше результатов». Мне нужно автоматически выбрать его. Как я могу это сделать. Для очистки я использую Python, Lxml.
Ответ №1:
Даже JavaScript использует http-запросы для получения данных, поэтому одним из способов было бы выяснить, какие запросы предоставляют данные, когда пользователь просит «Загрузить больше результатов» и эмулировать эти запросы.
Это не традиционная очистка, которая основана на простом или отображаемом HTML-контенте и обнаружении дополнительных ссылок, но может быть рабочим решением.
Следующие действия:
- посетите страницу в Google Chrome или Firefox
- нажмите F12, чтобы запустить инструменты разработчика или Firebug
- переключитесь на вкладку «Сеть»
- нажмите «Загрузить больше результатов»
- проверьте, какие http-запросы предоставили данные для загрузки дополнительных результатов и какие данные они возвращают.
- попробуйте эмулировать эти запросы из Python
Обратите внимание, что данные не обязательно представлены в форме HTML или XML, но могут быть в формате JSON. Но Python предоставляет достаточно инструментов и для обработки этого формата.
Ответ №2:
Вы не можете этого сделать. Функциональность обеспечивается javascript, который lxml не будет выполняться.