Как писать скрипты для w3m или lynx?

1

Как я могу перемещаться (используя клавиши TAB или hjkl) и нажимать на вещи (ENTER), вводить текст скриптом bash в текстовых браузерах, таких как w3m и lynx? Я сказал текст на основе, потому что когда я перехожу на графику, эти браузеры после долгого процесса собираются уничтожить мой баран.

Я искал эту вещь в Google или YouTube, прежде чем спросить, но я обнаружил, что на самом деле не то, что я хочу. Я не знаю, как сказать ядру "нажми ENTER!" или "нажмите 6 раз, чтобы перейти сюда!" Пожалуйста, помогите мне, ребята! Мне нужен гид. Вы можете просто сказать мне иди изучать это или смотреть это. Я видел что-то вроде Selenium, но эти вещи такие сложные и не совсем то, что я хочу.

savolla
источник
Может быть, это полезно для вас: unix.stackexchange.com/questions/14879/…
Helio

Ответы:

2

Рысь имеет флаги записи и воспроизведения -cmd_logи -cmd_script. Например, если вы находитесь на домашней странице gnu.org и 4 раза нажмите вкладку, а затем нажмите Enter, вы переходите на немецкую версию.

Вы можете записать это в Lynx с:

$ lynx -cmd_log=/tmp/gnu-log gnu.org
Looking up  'gnu.org' first
$ cat /tmp/gnu-log
# Command logfile created by Lynx 2.8.8pre.4 (04 Feb 2014)
# Arg0 = lynx
# Arg1 = -cmd_log=/tmp/gnu-log
# Arg2 = gnu.org
key Right Arrow
key Right Arrow
key Left Arrow
key <tab>
key <tab>
key <tab>
key <tab>
key ^J
key q
key <space>

В этом сценарии я ввел q, чтобы выйти из lynx. Так что этот скрипт выполнит какое-то действие и затем вернется в командную строку. С другой стороны, если вы хотите, чтобы вас поместили в рысь, просто обрежьте последние две строки из этого файла / tmp / gnu-log. Затем вы можете вызвать обрезанный файл с помощью:

$ lynx -cmd_script=/tmp/gnu-log gnu.org
Looking up  'gnu.org' first

... и вы будете размещены на немецкой странице gnu.org в lynx.

Наконец, в целях написания сценариев просто включите lynx -cmd_scriptнеобходимые аргументы в сценарий bash.

Полная дискуссия по адресу:

http://blog.unixy.net/2009/06/script-to-automate-browsing-actions-using-lynx/

Это решение не позволяет интерактивные сценарии. Например, вы не можете программно оценить часть веб-страницы, а затем выполнить операции ветвления на основе оценки. Тем не менее, это может быть полезно в ряде ситуаций. Вы легко получаете запись и воспроизведение макросов. Кроме того, вы можете создавать последовательности операций (и, конечно, сохранять веб-страницы) и настраивать задания cron .

Рик Майпруз
источник