Como escrever scripts para w3m ou lynx?

0

Como posso navegar (usando teclas TAB ou hjkl) e clicar em coisas (ENTER), inserir texto com script bash em navegadores baseados em texto como w3m e lynx? Eu disse que o texto é baseado porque quando eu vou gráfico, esses navegadores vão destruir meu ram depois de um longo processo.

Eu pesquisei essa coisa no google ou no youtube antes de perguntar, mas o que eu descobri é que na verdade não é o que eu quero. Eu não sei como dizer ao kernel "aperte ENTER!" ou "pressione TAB 6 vezes para ir aqui!" Por favor me ajude pessoal! Eu preciso de um guia. Você pode apenas me dizer para ir aprender isso ou assistir isso. Eu vi algo como Selenium, mas essas coisas são muito complicadas e não exatamente o que eu quero.

    
por savolla 05.02.2017 / 03:52

1 resposta

1

O lynx tem os sinalizadores de gravação e reprodução -cmd_log e -cmd_script . Por exemplo, se você estiver na página inicial do gnu.org e pressionar a tecla 4 vezes, aperte enter, você vai para a versão em alemão.

Você pode gravar isso no Lynx com:

$ 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>

Neste script eu inseri q para sair do lynx. Portanto, este script executará alguma ação e retornará à linha de comando. Por outro lado, se você quer ser posicionado no lince, apenas apare as duas últimas linhas deste arquivo / tmp / gnu-log. Então você pode invocar o arquivo cortado com:

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

... e você será posicionado na página alemã do gnu.org em lynx.

Por fim, para fins de script, inclua apenas o lynx -cmd_script com os argumentos necessários em um script bash.

Existe uma discussão completa em:

link

Esta solução não permite scripts interativos. Por exemplo, você não pode avaliar programaticamente uma parte de uma página da Web e fazer operações de ramificação com base na avaliação. No entanto, pode ser útil em diversas situações. Você obtém gravação e reprodução de macro fácil. Além disso, você pode criar sequências de operações (e, claro, salvar páginas da web) e pode configurar cron jobs .

    
por Rick Majpruz 10.10.2017 / 00:45