Запустить поиск через Python?

Я пытаюсь запустить веб-поиск с помощью скрипта Python. Я знаю, как заставить его работать на большинстве сайтов, например, использовать библиотеку запросов для получения "URL + аргументы запроса". Я пытаюсь запустить поиск на wappalyzer.com. Но когда вы запускаете поиск, его URL не меняется. Я также попытался просмотреть html, чтобы попытаться выяснить, где происходит поиск, чтобы я мог использовать красивый суп, чтобы изменить html и запустить его, но безрезультатно. Я действительно плохо знаком с веб-копированием, поэтому хотел бы помочь.

1 ответ

Решение

URL не изменяется, потому что поиск работает с JavaScript и асинхронными запросами. Самый простой способ автоматизировать такую ​​задачу - выполнить javascript и программно взаимодействовать с ним (часто проще, чем ретро-инжиниринг запросов, выполняемых клиентом, за исключением случаев, когда доступен публичный API).

Вы можете использовать селен с python, который довольно прост в использовании, или любую среду автоматизации, которая выполняет Javascript с помощью веб-драйвера (gecko, chrone, phantomjs).

С селеном вы сможете довольно легко запрограммировать свой скребок, выбрав поле поиска (например, с помощью селекторов css или xpath), введя значение и подтвердив поиск. После этого вы сможете сбросить всю страницу или отдельные части, которые вам нужны.

Другие вопросы по тегам