você está aqui: Home  → Arquivo de Mensagens

Múltiplas buscas num mesmo site

Colaboração: Otávio Penatti

Data de Publicação: 08 de Dezembro de 2004

Há situações nas quais precisamos obter informações de muitos itens em um mesmo site. Eu, por exemplo, tive que pesquisar numa base de dados de enzimas na internet o nome de várias enzimas, porém era inviável ficar digitando código por código no sistema de busca do site e depois analisar página por página para obter o nome da enzima. Para facilitar esse trabalho eu fiz um script shell que faz a busca para mim e já analisa os resultados. Fiz o seguinte:

  • coloquei todos os códigos das enzimas num arquivo texto, separando os códigos por espaço;
  • verifiquei que no site em que eu precisava pesquisar, as consultas eram passadas como parâmetros na URL da página, como abaixo:
  http://us.expasy.org/cgi-bin/get-enzyme-entry?3.2.2.1

Na qual "3.2.2.1" era o código da enzima que eu desejava obter o nome;

  • verifiquei também que na página resultado o nome da enzima aparecia sempre numa linha que começava com a string "DE"

  • então fiz um laço que varre meu arquivo com os códigos das enzimas e coloca cada código na URL da página. Depois, passa essa URL como entrada para o Lynx (browser modo texto) com o parâmetro "-dump", que faz com que o Lynx jogue a página carregada no terminal. Então usei o "grep" para selecionar da página obtida apenas a linha que começasse com "DE".

    O arquivo com os códigos das enzimas (enzimas.txt) ficou assim:

      1.16.3.1 3.1.1.2 3.1.8.1 3.4.21.5 3.4.21.7 3.4.21.47 3.4.21.45 3.4.21.42
    

    O script ficou assim:

      #!/bin/bash
      
      for i in ``cat enzimas.txt``;
      do
        echo $i
        lynx -dump "http://us.expasy.org/cgi-bin/get-enzyme-entry?$i" |
        grep "DE "
      done
    

    Os resultados foram os seguintes:
      1.16.3.1
      DE   Ferroxidase.
      3.1.1.2
      DE   Arylesterase.
      3.1.8.1
      DE   Aryldialkylphosphatase.
      3.4.21.5
      DE   Thrombin.
      3.4.21.7
      DE   Plasmin.
      3.4.21.47
      DE   Alternative-complement-pathway C3/C5 convertase.
      3.4.21.45
      DE   Complement factor I.
      3.4.21.42
      DE   Complement subcomponent C1s.
    

    No terminal então eu chamo o script da seguinte forma:

      ./script.sh
    

    Os resultados também poderiam ser direcionados para um arquivo, como abaixo:
      ./script.sh > resultados.txt
    



Veja a relação completa dos artigos de Otávio Penatti

 

 

Opinião dos Leitores

Seja o primeiro a comentar este artigo
*Nome:
Email:
Me notifique sobre novos comentários nessa página
Oculte meu email
*Texto:
 
  Para publicar seu comentário, digite o código contido na imagem acima
 


Powered by Scriptsmill Comments Script