Навигация по Интернету с помощью терминала

Навигация по Интернету с помощью терминала

Я пытаюсь научиться пользоваться терминалом и хочу попробовать отправлять и получать данные с обычного веб-сайта, например Amazon или Google.

Я хочу, чтобы терминал вводил строку в строку поиска веб-сайта и "нажимал" на поиск. Мне не нужно, чтобы он открывал какие-либо веб-страницы, просто отправлял данные на веб-сайт, как будто я сам туда зашел, ввел запрос и нажал Enter.

Я также хотел бы эффективно «отмечать» флажки и переключать раскрывающиеся параметры поиска перед выполнением поиска.

В конце концов я планирую иметь набор скриптов, которые я могу запустить в любое время, чтобы войти в некоторые из моих аккаунтов и автоматически переключать настройки. Это безопасно? Независимо от этого, я хочу поэкспериментировать с навигацией по веб-сайтам и возвратом результатов поиска.

Вероятно, это подразумевает изучение исходного кода страницы, чтобы решить, как сообщить ей, какие флажки я отметил или какие опции переключил, и, возможно, как обрабатывать возвращенные результаты.

Какие команды терминала мне нужно знать? Какие методы мне следует изучить?

решение1

Пытатьсярысь. Вы не будете разочарованы :)

решение2

В вашем вопросе есть две стороны сложности: 1. Как получить исходный код страницы, 2. Как редактировать пользовательские данные на проанализированной HTML-странице.

Первый вопрос относительно легко решается с помощью таких инструментов, как wgetили curl(для получения более подробной информации см. их руководства).

Второй вопрос немного тривиален и действительно зависит от того, насколько широко вы хотите изменить данные. Вариант — это парсинг источника формы и, таким образом, построение запроса POST через curl --dataoption.

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

Связанный контент