Я пытаюсь научиться пользоваться терминалом и хочу попробовать отправлять и получать данные с обычного веб-сайта, например Amazon или Google.
Я хочу, чтобы терминал вводил строку в строку поиска веб-сайта и "нажимал" на поиск. Мне не нужно, чтобы он открывал какие-либо веб-страницы, просто отправлял данные на веб-сайт, как будто я сам туда зашел, ввел запрос и нажал Enter.
Я также хотел бы эффективно «отмечать» флажки и переключать раскрывающиеся параметры поиска перед выполнением поиска.
В конце концов я планирую иметь набор скриптов, которые я могу запустить в любое время, чтобы войти в некоторые из моих аккаунтов и автоматически переключать настройки. Это безопасно? Независимо от этого, я хочу поэкспериментировать с навигацией по веб-сайтам и возвратом результатов поиска.
Вероятно, это подразумевает изучение исходного кода страницы, чтобы решить, как сообщить ей, какие флажки я отметил или какие опции переключил, и, возможно, как обрабатывать возвращенные результаты.
Какие команды терминала мне нужно знать? Какие методы мне следует изучить?
решение1
Пытатьсярысь. Вы не будете разочарованы :)
решение2
В вашем вопросе есть две стороны сложности: 1. Как получить исходный код страницы, 2. Как редактировать пользовательские данные на проанализированной HTML-странице.
Первый вопрос относительно легко решается с помощью таких инструментов, как wget
или curl
(для получения более подробной информации см. их руководства).
Второй вопрос немного тривиален и действительно зависит от того, насколько широко вы хотите изменить данные. Вариант — это парсинг источника формы и, таким образом, построение запроса POST через curl --data
option.
С другой стороны, современные веб-технологии могут предложить множество тривиальных методов формирования объекта в окне браузера, через ленивую загрузку javascript и т. д. Для этого вы можете использоватьСелен, который пользуется большой популярностью среди тех, кто автоматизирует тестирование разрабатываемых веб-страниц.