Script lento [RESOLVIDO]

1. Script lento [RESOLVIDO]

Ricardo
r_mil

(usa Ubuntu)

Enviado em 14/09/2017 - 21:44h

Olá pessoal,

Eu uso o seguinte script em Bash para traduzir palavras estrangeiras para o português:

#!/usr/bin/env bash
text="$(xsel -o)"
translate="$(wget -U "Mozilla/5.0" -qO - "http://translate.googleapis.com/translate_a/single?client=gtx&sl=auto&tl=pt&dt=t&q=$(echo $text | sed "s/[\"'<>]//g")" | sed "s/,,,0]],,.*//g" | awk -F'"' '{print $2}')"
echo -e "Original text:" "$text"'\n' > /tmp/notitrans
echo "Translation:" "$translate" >> /tmp/notitrans
zenity --text-info --title="Translation" --filename=/tmp/notitrans


Ele funcionava muito bem, mas de uma hora para outra a atuação dele ficou muito lenta, [eu aciono o script e demora muito para ele responder] a ponto de eu desistir de usá-lo. Já reiniciei o compuatador inúmeras vezes, atualizei o sistema pelo terminal, fui ao Google buscar soluções, mas nada me ajudou. Alguém teria alguma dica?

Abraços,


  


2. MELHOR RESPOSTA

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 18/09/2017 - 15:58h

r_mil escreveu:

As saídas foram as seguintes:

ricardom@ricardom:~$ ping -c 12 translate.googleapis.com
PING translate.googleapis.com(2800:3f0:4001:816::200a (2800:3f0:4001:816::200a)) 56 data bytes

--- translate.googleapis.com ping statistics ---
12 packets transmitted, 0 received, 100% packet loss, time 11261ms

ricardom@ricardom:~$


e

ricardom@ricardom:~$ traceroute translate.googleapis.com
traceroute to translate.googleapis.com (216.58.202.170), 30 hops max, 60 byte packets
1 192.168.1.1 (192.168.1.1) 2.746 ms 2.283 ms *
2 201.79.201.1 (201.79.201.1) 18.895 ms 18.746 ms 19.772 ms
3 100.122.50.171 (100.122.50.171) 23.804 ms 24.438 ms 25.838 ms
4 100.122.22.200 (100.122.22.200) 38.401 ms 38.347 ms 100.122.19.129 (100.122.19.129) 38.216 ms
5 100.122.19.196 (100.122.19.196) 47.469 ms 100.122.19.220 (100.122.19.220) 46.450 ms 100.122.19.196 (100.122.19.196) 47.907 ms
6 100.122.20.85 (100.122.20.85) 49.479 ms 100.122.20.77 (100.122.20.77) 36.302 ms 100.122.20.103 (100.122.20.103) 35.505 ms
7 72.14.220.142 (72.14.220.142) 34.988 ms 72.14.242.150 (72.14.242.150) 40.308 ms 40.242 ms
8 108.170.245.129 (108.170.245.129) 39.265 ms 108.170.245.161 (108.170.245.161) 39.200 ms 108.170.245.129 (108.170.245.129) 41.740 ms
9 72.14.239.221 (72.14.239.221) 43.697 ms 72.14.239.223 (72.14.239.223) 34.837 ms 38.150 ms
10 216.58.202.170 (216.58.202.170) 41.485 ms 41.491 ms 43.769 ms
ricardom@ricardom:~$


O ping acusou ERRO!!!!
12 packets transmitted, 0 received, 100% packet loss, time 11261ms 

Novamente, devido a tentativa de uso do IPv6

Veja a possibilidade de desativar o IPv6,
Em "conexão de rede", deve encontrar algo . . .

mso

3. Re: Script lento [RESOLVIDO]

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 14/09/2017 - 23:48h

r_mil escreveu:

Olá pessoal,

Eu uso o seguinte script em Bash para traduzir palavras estrangeiras para o português:

#!/usr/bin/env bash
text="$(xsel -o)"
translate="$(wget -U "Mozilla/5.0" -qO - "http://translate.googleapis.com/translate_a/single?client=gtx&sl=auto&tl=pt&dt=t&q=$(echo $text | sed "s/[\"'<>]//g")" | sed "s/,,,0]],,.*//g" | awk -F'"' '{print $2}')"
echo -e "Original text:" "$text"'\n' > /tmp/notitrans
echo "Translation:" "$translate" >> /tmp/notitrans
zenity --text-info --title="Translation" --filename=/tmp/notitrans


Ele funcionava muito bem, mas de uma hora para outra a atuação dele ficou muito lenta, [eu aciono o script e demora muito para ele responder] a ponto de eu desistir de usá-lo. Já reiniciei o compuatador inúmeras vezes, atualizei o sistema pelo terminal, fui ao Google buscar soluções, mas nada me ajudou. Alguém teria alguma dica?

Abraços,


Boa noite.
A causa da lentidão, provavelmente é o acesso a internet com o wget . . . .

Sugestão para "pegar" a tradução:
wget -U "Mozilla/5.0" -qO - "http://translate.googleapis.com/translate_a/single?client=gtx&sl=auto&tl=pt&dt=t&q=yesterday"|egrep -o '[a-z]+'|head -n1
ontem


Att.:
Marcelo Oliver



4. Re: Script lento [RESOLVIDO]

Ricardo
r_mil

(usa Ubuntu)

Enviado em 15/09/2017 - 00:16h

Oi Marcelo,

Obrigado pela dica. Eu não entendo muito de código, sobretudo Bash. Tentei fazer a alteração que você me pediu mas não consegui nenhum resultado. Acho que estou substituindo errado. Tem muitas aspas e parênteses, certamente estou esbarrando em algo. Você poderia, gentilmente, fazer a alteração completa para mim? Posta o código inteiro já com a substituição, que vou copiar para o arquivo e fazer o teste com ele aqui.

Um grande abraço!


5. Re: Script lento [RESOLVIDO]

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 15/09/2017 - 13:06h

r_mil escreveu:

Oi Marcelo,

Obrigado pela dica. Eu não entendo muito de código, sobretudo Bash. Tentei fazer a alteração que você me pediu mas não consegui nenhum resultado. Acho que estou substituindo errado. Tem muitas aspas e parênteses, certamente estou esbarrando em algo. Você poderia, gentilmente, fazer a alteração completa para mim? Posta o código inteiro já com a substituição, que vou copiar para o arquivo e fazer o teste com ele aqui.

Um grande abraço!


Boa tarde R_MIL.É só substituir o comando que gera a var "translate", segue:
ANTERIOR:
translate="$(wget -U "Mozilla/5.0" -qO - "http://translate.googleapis.com/translate_a/single?client=gtx&sl=auto&tl=pt&dt=t&q=$(echo $text | sed "s/[\"'<>]//g")" | sed "s/,,,0]],,.*//g" | awk -F'"' '{print $2}')"
ATUAL:
translate="$(wget -U "Mozilla/5.0" -qO - "http://translate.googleapis.com/translate_a/single?client=gtx&sl=auto&tl=pt&dt=t&q=yesterday"|egrep -o '[a-z]+'|head -n1)" 


Att.:
Marcelo Oliver


6. Re: Script lento [RESOLVIDO]

Ricardo
r_mil

(usa Ubuntu)

Enviado em 15/09/2017 - 13:16h

Oi Marcelo,

Fiz a substituição conforme você me sugeriu, o código ficou assim:

#!/usr/bin/env bash
text="$(xsel -o)"
translate="$(wget -U "Mozilla/5.0" -qO - "http://translate.googleapis.com/translate_a/single?client=gtx&sl=auto&tl=pt&dt=t&q=yesterday"|egrep -o '[a-z]+'|head -n1)"
echo -e "Original text:" "$text"'\n' > /tmp/notitrans
echo "Translation:" "$translate" >> /tmp/notitrans
zenity --text-info --title="Translation" --filename=/tmp/notitrans


Mas não resolveu a lentidão, ela está cada vez maior. E a tradução também não está correta: ele está traduzindo qualquer palavra escolhida como 'ontem'.

O que poderíamos fazer?
Abraços,


7. Re: Script lento

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 15/09/2017 - 13:32h

r_mil escreveu:

Oi Marcelo,

Fiz a substituição conforme você me sugeriu, o código ficou assim:

#!/usr/bin/env bash
text="$(xsel -o)"
translate="$(wget -U "Mozilla/5.0" -qO - "http://translate.googleapis.com/translate_a/single?client=gtx&sl=auto&tl=pt&dt=t&q=yesterday"|egrep -o '[a-z]+'|head -n1)"
echo -e "Original text:" "$text"'\n' > /tmp/notitrans
echo "Translation:" "$translate" >> /tmp/notitrans
zenity --text-info --title="Translation" --filename=/tmp/notitrans


Mas não resolveu a lentidão, ela está cada vez maior. E a tradução também não está correta: ele está traduzindo qualquer palavra escolhida como 'ontem'.

O que poderíamos fazer?
Abraços,


Simples,
é so trocar a palavra "yesterday", que coloquei no meu exemplo, pela "var" que tem a palavra que quer traduzir.
wget -U "Mozilla/5.0" -qO - "http://translate.googleapis.com/translate_a/single?client=gtx&sl=auto&tl=pt&dt=t&q=COLOQUE A VAR AQUI"|egrep -o '[a-z]+'|head -n1 


Quanto a lentidão, é problema de acesso a internet.

MSO


8. Re: Script lento [RESOLVIDO]

Ricardo
r_mil

(usa Ubuntu)

Enviado em 15/09/2017 - 13:47h

Marcelo,

O problema da lentidão poderia mesmo ser internet?
Estou navegando bem com o Google Chrome, velocidade normal... somente esta aplicação em bash que está lenta.
Tem algum recurso que ainda poderíamos tentar?

Abraços,


9. Re: Script lento [RESOLVIDO]

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 15/09/2017 - 15:10h

Teste o comando abaixo, e poste a saída:
time translate="$(wget -U "Mozilla/5.0" -qO - "http://translate.googleapis.com/translate_a/single?client=gtx&sl=auto&tl=pt&dt=t&q=yesterday"|egrep -o '[a-z]+'|head -n1)" 


MSO


10. Re: Script lento [RESOLVIDO]

Ricardo
r_mil

(usa Ubuntu)

Enviado em 15/09/2017 - 15:12h

Marcelo,

Procurando na internet, encontrei que o "axel" é uma alternativa mais veloz ao "wget". Realmente funcionou! A aplicação voltou a ter velocidade automática. Só precisei mudar o início da linha, onde estava o "wget". O código ficou assim:

#!/usr/bin/env bash
text="$(xsel -o)"
translate="$(axel -n 4 "http://translate.googleapis.com/translate_a/single?client=gtx&sl=auto&tl=pt&dt=t&q=$(echo $text | sed "s/[\"'<>]//g")"|egrep -o '[a-z]+'|head -n1)"
echo -e "Original text:" "$text"'\n' > /tmp/notitrans
echo "Translation:" "$translate" >> /tmp/notitrans
zenity --text-info --title="Translation" --filename=/tmp/notitrans


O problema agora é que ele não mostra a tradução. Fica um espaço em branco onde deveria estar a palavra traduzida.
Eu acho que a causa deve ser alguma configuração ou atributo do "axel" que eu não saiba fazer.
Você saberia me orientar nisso?

Abraços,


11. Re: Script lento [RESOLVIDO]

Ricardo
r_mil

(usa Ubuntu)

Enviado em 15/09/2017 - 15:19h

msoliver escreveu:

Teste o comando abaixo, e poste a saída:
time translate="$(wget -U "Mozilla/5.0" -qO - "http://translate.googleapis.com/translate_a/single?client=gtx&sl=auto&tl=pt&dt=t&q=yesterday"|egrep -o '[a-z]+'|head -n1)" 


MSO



Msoliver, essa foi a saída:

ricardom@ricardom:~$ time translate="$(wget -U "Mozilla/5.0" -qO - "http://translate.googleapis.com/translate_a/single?client=gtx&sl=auto&tl=pt&dt=t&q=yesterday"|egrep -o '[a-z]+'|head -n1)"

real 2m10,934s
user 0m0,000s
sys 0m0,008s
ricardom@ricardom:~$


Abraços,


12. Re: Script lento [RESOLVIDO]

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 15/09/2017 - 15:26h

r_mil escreveu:

msoliver escreveu:

Teste o comando abaixo, e poste a saída:
time translate="$(wget -U "Mozilla/5.0" -qO - "http://translate.googleapis.com/translate_a/single?client=gtx&sl=auto&tl=pt&dt=t&q=yesterday"|egrep -o '[a-z]+'|head -n1)" 


MSO



Msoliver, essa foi a saída:

ricardom@ricardom:~$ time translate="$(wget -U "Mozilla/5.0" -qO - "http://translate.googleapis.com/translate_a/single?client=gtx&sl=auto&tl=pt&dt=t&q=yesterday"|egrep -o '[a-z]+'|head -n1)"

real 2m10,934s
user 0m0,000s
sys 0m0,008s
ricardom@ricardom:~$

Abraços,


Realmente, MUITO LENTO . . . .
Mais de 2 minutos . . . .
real 2m10,934s
Aqui o tempo foi de: real 0m0.281s

MSOliver



01 02



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts