Ferramentas para capturar e converter a Web

Documentação do raspador da Web

Para criar um rascunho da web, você deve especificar cinco tipos de informações, espalhadas pelas seguintes guias.

  1. Opções de raspar
  2. Site alvo
  3. Instruções para raspar
  4. Opções de exportação
  5. Raspar agendamento

Opções de raspar

Todos os seguintes recursos estão disponíveis para personalizar uma raspagem da web na guia Opções de raspagem.

Nome do Raspar o nome do arranhão.

Siga os Links fornece as seguintes opções sobre como o raspador deve seguir os links:

Ignorar downloads de arquivos depois de definir qualquer link, que causa o download de um arquivo quando visitado, não é baixado.

Ignorar arquivo Robots.txt se definido, o raspador pode visitar as páginas da web normalmente excluídas do rastreamento pelo proprietário do site.

Ignorar páginas de erro se definido, o web scraper irá ignorar todas as páginas da web que relatam um erro. Portanto, qualquer código de status HTTP 400 ou superior.

Ignorar fragmentos de URL se definido, o web scraper irá ignorar a parte do URL após o # esse recurso é comumente usado para indicar um marcador na mesma página e, portanto, normalmente resultaria na remoção de páginas desnecessárias. No entanto, alguns sites usam esse recurso para mostrar conteúdos diferentes e, nesse caso, essa configuração precisa ser desativada. Esta opção só é aplicável quando seguir links não é o necessário.

Ignorar duplicatas se definido, ele ignorará as páginas iguais ou superiores à semelhança definida, por exemplo, você poderá ignorar as páginas que são 95% iguais.

Raspar limite permite especificar quantas páginas o raspador da Web deve raspar antes de parar.

Usar meu fuso horário se definido, indica que o raspador da Web deve tentar converter as datas que raspa into seu fuso horário local. Seu fuso horário pode ser definido na página da conta.

Localização a localização geográfica da qual o raspador da Web executará a raspagem. Isso pode ser útil se o site de destino tiver restrições com base na localização.

Formato de data padrão ao converter datas em que o formato da data não pode ser determinado, o Raspador da Web usará como padrão o formato escolhido.

Atraso no carregamento da página é o tempo em milissegundos que o raspador da Web deve esperar antes de analisar uma página. Isso é muito útil se uma página contém muito AJAX ou é lenta para carregar.

Site alvo

Site alvo

Na guia Site de destino, você especifica os sites dos quais deseja extrair dados. Para dizer à ferramenta scrape para extrair dados de um site, primeiro você precisa especificar o URL principal que está intapreendido em http://www.example.com/shop/ É aqui que o raspador inicia sua raspagem, pode ser uma página da Web normal, documento PDF, documento XML, documento JSON, feed RSS ou mapa do site. Se não for uma página da Web ou documento PDF, o raspador encontrará todos os links no arquivo e visitará cada um.

Para seguir apenas os links encontrados no URL de destino e não nas páginas subseqüentes, você pode definir o Siga os Links opção de raspar para na primeira página. Isso usará o URL de destino apenas para propagar o restante do raspar.

Padrão de URL

Por padrão, o raspador da Web segue todos os links que descobre em cada página da Web que visita. Se você deseja restringir quais links os Raspador da Web a seguir, uma maneira simples de fazer isso é especificar um padrão de URL. Essa técnica poderosa funciona principalmente especificando uma URL com o asterisco como curinga para indicar que qualquer caractere pode estar presente nesta parte do padrão. Por exemplo http://www.example.com/*/articles/* rasparia qualquer URL que contenha artigos como o segundo diretório da raiz do site.

Uma maneira mais restritiva de definir um padrão de URL é definir alternativas. Por exemplo, este exemplo irá corresponder apenas a loja ou notícias: http://www.example.com/ /*

Portanto, isso corresponderia a este http://www.example.com/store/products/1 mas não http://www.example.com/about/.

Ou, alternativamente, é possível combinar tudo menos alguma coisa. Por exemplo, este exemplo não corresponderá a loja ou notícias: http://www.example.com/ /*

Portanto, isso corresponderia a este http://www.example.com/about/ mas não http://www.example.com/store/products/1!

Um padrão de URL também pode conter palavras-chave. Uma palavra-chave é qualquer coisa contida entre colchetes duplos. Então [[URL_START]]www.example.com* corresponderá a qualquer início válido de um URL, então http://www.example.com/, https://www.example.com/ ou mesmo ftp://www.example.com/ por exemplo.

URLs iniciais

Os URLs iniciais permitem que o usuário especifique uma lista de URLs que devem ser rastreados pelo raspador da Web. Se você deseja que os URLs de propagação sejam raspados, defina o Siga os Links opções de raspar para sem páginas na guia Opções de raspar.

Para definir URLs iniciais na guia Site de destino, clique no botão Adicionar destino, marque a caixa de seleção Definir URLs iniciais e especifique cada URL a ser extraído em uma linha separada.

Crie URLs iniciais a partir de um URL de modelo

Como alternativa, você pode gerar automaticamente os URLs iniciais usando um URL de modelo; esse é um URL único que inclui uma variável de URL. Uma variável de URL especifica um intervalo de números a serem repetidos.

O número inicial é o número em que a variável de URL deve começar a contar, o número final é o número em que a variável de URL deixará de contar; o número de iteração é o número que o número aumentará para cada iteração da variável de URL.

Por exemplo, para o seguinte URL de modelo http://www.example.com/search?pageNo=

Isso criará os seguintes URLs iniciais:

Executar postagem

A URL também pode especificar uma URL com parâmetros para o POST também, por exemplo, um formulário de login. Para fazer isso, especifique o URL do formulário na caixa de texto URL de destino e adicione os parâmetros de postagem necessários a serem usados. Os valores pós variáveis ​​também podem incluir variáveis ​​GrabzIt especiais, como:

Instruções para raspar

As instruções de raspar informam ao Web Scraper quais ações devem ser executadas ao copiar o site de destino. A guia Instruções de raspagem mostra o assistente de raspagem por padrão, o que torna mais fácil adicionar as instruções de raspagem de que você precisa. Um bom exemplo de como usar este assistente é mostrado no lista de produtos e tutorial de raspagem de detalhes.

Quando estiver pronto para começar a raspar, pressione o Adicionar nova instrução de raspar link.

Isso abrirá o assistente e carregará automaticamente o URL de destino, permitindo que você selecione imediatamente o que deseja raspar. Se uma página da web ou documento PDF tiver sido carregado, você poderá clicar em qualquer link e ele funcionará normalmente, por exemplo, navegação para outra página da web. Até você escolher uma das ações, na parte inferior da tela, neste pontoint qualquer clique no conteúdo selecionará o elemento HTML que você deseja extrair ou manipular.

A primeira coisa a entender sobre as instruções de raspar é que elas são executadas em todas as páginas da web por padrão. A maneira de parar isso é através do uso de modelos. É possível atribuir um modelo ao executar uma ação, como clicar em um link, e, sempre que o raspador visitar esse link ou clicar nesse botão, ele reconhecerá que pertence ao modelo atribuído. Isso permite que diferentes tipos de páginas sejam definidos. Por exemplo, você pode ter uma página de categoria do produto que contém algumas informações de visão geral e, em seguida, uma página de detalhes que contém as informações do produto. As duas páginas provavelmente precisariam de um conjunto diferente de instruções para raspar.

Scraper Template

Para começar, escolha o Clique ação, depois de selecionar os itens nos quais você deseja executar a ação e clicar no Próximo botão, digite o nome do modelo no Criar um modelo Agora, sempre que o raspador executar essas ações, o modelo retornado será o nome que você forneceu.

Em seguida, para atribuir um modelo específico a uma instrução de raspar, você precisa selecionar o modelo desejado no Executar em lista suspensa, que aparece na janela de opções que aparece logo antes da adição da instrução de raspar. As três opções principais ao escolher um modelo são as seguintes:

Depois de selecionar uma dessas opções, a instrução de raspar será executada apenas no modelo especificado.

Extraindo dados

Você notará que ao selecionar o extrair dados açao. O canto inferior esquerdo da tela convida você a selecionar um elemento HTML na janela acima ou a escolher uma propriedade de página global.

Para usar uma propriedade de página global, clique no propriedade de página global ligação. Em seguida, confirme que deseja continuar. Agora você terá uma lista de propriedades que podem ser extraídas diretamente da página. Por exemplo: Título da página.

Para escolher um, basta selecioná-lo na lista de opções e clicar Próximo para adicionar os dados ao conjunto de dados.

Se você deseja extrair dados em elementos HTML específicos, em vez de pertencer a toda a página, clique nos elementos HTML relevantes, é possível selecionar itens únicos ou múltiplos. No entanto, se você estiver selecionando vários itens, tente selecionar vários itens iguais, como várias linhas em uma coluna, porque se o raspador não puder criar uma regra que possa identificar exclusivamente a coleção de dados selecionada, uma instrução de raspar não será poder ser criado. Além disso, se os vários itens nos quais você está clicando foram identificados como dados repetidos pelo nosso assistente de raspador da Web, todos os dados repetidos no mesmo grupo serão selecionados automaticamente. Depois de selecionar todos os itens únicos ou múltiplos, escolha um atributo para extrair da parte inferior esquerda da tela e clique em Próximo.

Criando um conjunto de dados

A tela do conjunto de dados permite alterar a forma como os dados são processados; por exemplo, você pode renomear o conjunto de dados e as colunas nele, basta clicar no nome para renomeá-lo. Ao adicionar uma coluna a um conjunto de dados, você também precisa escolher o modelo em que deve ser executado. Você pode alterar isso clicando na lista suspensa localizada sob o nome da coluna.

Geralmente, ao extrair dados, é comum que alguns itens repetidos sejam repetidos inconsistentemente, para garantir que as linhas corretas ainda estejam associadas uma à outra, use o Colunas de link critérios, para vincular as colunas inconsistentes à coluna mais consistente no conjunto de dados.

Para adicionar mais dados ao conjunto de dados, clique no botão ou clique no botão para remover dados do conjunto de dados ou para excluir o conjunto de dados inteiro. O conjunto de dados também permite que vários critérios sejam aplicados aos dados. Para isso, selecione a ação desejada a partir do topo e clique na coluna relevante para aplicar os critérios. Se você cometer um erro ao adicionar critérios, clique no ícone botão.

Aqui está a lista de diferentes tipos de critérios e como usá-los:

Quando você seleciona uma das operações acima, se ela pode afetar várias colunas, perguntará se você deseja permitir apenas que ela afete um subconjunto das colunas ou de todas elas. Na maioria dos casos, você deseja que ele afete todas as colunas; no entanto, em algumas circunstâncias, é útil limitar as colunas afetadas. Por exemplo, se você estiver selecionando uma série de rótulos e valores, que muda de posição nas páginas da web, você pode selecionar todos os rótulos e valores. Em seguida, no conjunto de dados, use a operação igual para limitá-la ao rótulo desejado e especifique que apenas as colunas rótulo e valor devem ser afetadas. Isso garantirá que as outras colunas não sejam afetadas pelas linhas sendo excluídas. Para ser completo, seria útil ocultar a coluna do rótulo.

Depois de modificar tudo o que deseja, clique em Próximo e suas instruções de raspar serão adicionadas ao raspar. Você tem então a opção de adicionar mais instruções de raspar, se desejar.

Manipulando uma página da Web

Uma página da Web pode ser manipulada antes de ser raspada, clicando, digitando e selecionando valores nas listas suspensas. É importante lembrar que, embora isso possa causar o carregamento de uma nova página da Web, as instruções de raspar não serão reiniciadas até que todas as instruções de raspar aplicáveis ​​sejam executadas.

Para manipular uma página da Web, escolha o Elemento Clique, Elemento de pairar, Rolagem, Digite o texto or Selecione o valor da lista suspensa ações. Se você estiver executando uma ação de clique, poderá clicar em qualquer número de elementos em uma página da web. Caso contrário, você deve selecionar um elemento HTML apropriado, por exemplo, o texto deve ser digitado em uma caixa de texto. Então clique Próximo. Isso abrirá uma caixa de opções que permite concluir a ação. Ao digitar texto e selecionar em uma lista suspensa, os dados a serem digitados ou selecionados devem ser escolhidos respectivamente. Fora isso, as opções são as mesmas para as três ações.

Se desejar, você pode selecionar o modelo em que esta ação deve ser executada e, para a ação de clique, qual modelo se aplica, assim que a ação de clique estiver concluída. No entanto, atribuir um novo modelo a uma ação de clique que realiza vários cliques na mesma página, não é uma boa ideia, como abrir pop-ups embutidos ou fazer com que as coisas apareçam na tela. Isso porque se a ação do clique for executada apenas em determinados modelos, o novo modelo atribuído pelo primeiro clique não será redefinido e, portanto, dependendo de como a raspagem foi gravada, isso poderá impedir que cliques futuros sejam executados na mesma página. Você também pode definir se deseja que essa ação seja executada apenas uma vez, o que é útil se você estiver fazendo algo como login into site.

As ações Digitar texto ou Selecionar valor da lista suspensa permitem digitar vários itens de texto ou fazer várias seleções de caixa de seleção, respectivamente. Estes podem ser editados clicando nas instruções de raspar Alterar ou exibir variáveis , como mostrado na captura de tela à esquerda.

Isso pode ser importante se você quiser digitar uma lista de nomes em uma caixa de pesquisa, por exemplo. Para garantir que um formulário seja enviado somente quando houver um valor na caixa de pesquisa, um modelo poderá ser definido toda vez que o texto for digitado com êxito into a caixa de texto e a ação de clique em um botão não são executadas, a menos que este modelo esteja definido. Depois que a ação de clique for executada, o modelo precisará ser alterado para outra coisa para redefinir o procedimento.

Depois que as ações que manipulam sites são executadas, é útil aguardar um pouco se as ações iniciarem a funcionalidade AJAX, para permitir que o conteúdo AJAX seja carregado antes de continuar com a raspagem. Você pode fazer isso adicionando um atraso no Após a execução, aguarde caixa de texto.

Você pode pular direto para um URL diferente assim que alguma condição for atendida. Para fazer isso, use o Ir para URL A ação, que aparecerá apenas quando pelo menos um modelo tiver sido definido no rascunho e quando criado tiver que ser atribuído a um modelo, para ajudar a evitar loops infinitos.

Finalmente, você pode usar todas as APIs de captura do GrabzIt nos seus scrapes da web, basta escolher a ação Capturar página da Web e escolher a captura desejada. Você pode limitar isso para capturar determinadas páginas da Web no rascunho, especificando um modelo para executar depois de selecionar o Próximo botão.

Depois que todas as instruções de raspagem são adicionadas, elas podem ser vistas no painel de instruções de raspagem, a cruz ao lado de cada instrução de raspagem permite que a instrução de raspagem seja excluída. Se uma instrução de raspar for excluída, exigida por outras instruções de raspar, essas instruções também serão excluídas. Você pode alterar a ordem das instruções de raspar arrastando todas as instruções de raspagem com o ícone de captura.

Escrever instruções de raspar manualmente

Se precisar personalizar as instruções de raspagem de uma maneira mais específica, você precisará alterar as instruções de raspagem manualmente.

As instruções de raspar são baseadas em JavaScript e o editor de código vem completo com um verificador de sintaxe, preenchimento automático e dicas de ferramentas para facilitar o máximo possível.

Instruções do raspador da Web A funcionalidade principal do editor de código pode ser acessada através das opções de menu, conforme mostrado na captura de tela, o objetivo de cada um é explicado separadamente abaixo. Enquanto qualquer erro de sintaxe nas instruções de raspar estiver indicado na calha esquerda do editor de código.

Wizard o assistente permite selecionar partes da página que você deseja extrair e executar outras tarefas comuns, como criar capturas da web.

Exibir instruções de raspar exibe o código de instruções para raspar para o usuário.

Excluir todas as instruções exclui todas as instruções de raspar.

Funções da página da Web irá inserir a palavra-chave Page into as instruções de raspar e abra o preenchimento automático, que contém todo o possível Funções da página. As funções de página permitem extrair dados da página da web.

Funções de dados irá inserir a palavra-chave Dados into as instruções de raspar. Funções de dados permitir que você save informações.

Funções de Navegação insere a palavra-chave Navigation into editor de código. o Funções de navegação permitem que você controle como o Web Scraper navega no site de destino.

Funções Globais insere a palavra-chave Global into as instruções de raspar. Isso lhe dá acesso a funções que pode armazenar dados entre a análise de diferentes páginas da web. Ao escrever instruções para raspar, é importante lembrar que o estado das variáveis ​​JavaScript nas instruções para raspar não é mantido quando o raspador se move entre páginas da web, a menos que você use as funções Globais para save variáveis, como mostrado abaixo.

Global.set("myvariable", "hello");
var mrvar = Global.get("myvariable");

Para criar uma variável global persistente, passe true para o parâmetro persist no método Global.set, como mostrado abaixo.

Global.set("myvariable", "hello", true);

Funções de utilidade insere a palavra-chave Utility into as instruções de raspar. Isso permite que você use funções comuns que facilitam a escrita de rascunhos, como adicionar ou remover consultasstring parâmetros de URLs.

Funções de Critérios insere a palavra-chave Critérios into as instruções de raspar. Estes funções permite refinar os dados extraídos durante a raspagem, como a eliminação de duplicatas.

filtros permite que você crie facilmente um filtro, isso é necessário para algumas funções para selecionar um elemento HTML específico de dentro de uma página da web. Basta selecionar os atributos que seu elemento de destino deve ter e / ou os pais do elemento para selecionar esse elemento. Antes de clicar nessa opção, verifique se o cursor está no local correto da função para passar o filtro também.

Funções de captura de tela permite definir opções de captura de tela. Simplesmente coloque o cursor na parte correta da função, conforme identificado pela dica de ferramenta e pressione as opções de captura de tela. Em seguida, escolha todas as opções desejadas e insira o comando.

Strings

Strings são usados ​​nas instruções de raspar, ao executar um raspar na web, para definir o texto. UMA string é delimitado por duplo (") ou aspas simples (') Se um string é iniciado com aspas duplas, deve terminar com aspas duplas, se um string começa com uma aspas simples, deve terminar com uma aspas simples. Por exemplo:

"my-class" e 'my-class'

Um erro comum que pode ocorrer é o não fechado string erro, é quando um string não possui uma cotação de fechamento, como mostrado acima, ou há uma quebra de linha no string. Os seguintes são ilegais strings:

"my
class"

"my class

Corrigir esse erro é garantir que eles não contenham quebras de linha e tenham aspas correspondentes, da seguinte forma:

"my class" e "my class"

Às vezes, você deseja que aspas simples ou duplas apareçam em um string. A maneira mais fácil de fazer isso é colocar uma única citação em um string delimitado com aspas duplas e aspas duplas em um string delimitado com aspas simples, assim:

"Bob's shop" e '"The best store on the web"'

Como alternativa, você pode usar uma barra invertida para escapar de uma citação da seguinte maneira:

'test\'s'

Tarefas comuns de raspar manual

Verificador de Link Crie um verificador de link personalizado - descubra como criar um verificador de link personalizado seguindo estas instruções simples.
Download de imagem Baixe todas as imagens de um site - descubra como baixar todas as imagens de um site inteiro.
Criar conjunto de dados Extraia dados e transforme-os into um conjunto de dados - descubra como criar um conjunto de dados no site que você está raspando.
Extrair links Extrair links de um site - descubra como extrair todos os links HTML de um site inteiro e save eles no formato que você deseja.
Selecionar texto Extraindo valores do texto usando padrões - descubra como usar padrões para extrair valores de blocos de texto.
OCR Extrair texto de imagens - descubra como extrair o texto contido nas imagens.
Conjunto de dados Como preencher um conjunto de dados - formate melhor os dados extraídos usando o preenchimento.
Ordem Manipulando matrizes - descubra como usar os métodos especiais de utilidade de matriz para lidar facilmente com matrizes dentro de arranhões.
Açao Social Execute uma ação apenas uma vez durante uma raspagem - descubra como executar uma ação apenas uma vez durante um arranhão inteiro.
Refinar Refinando dados raspados - descubra como remover dados não necessários de seus arranhões.
Email Raspe endereços de email de um site - descubra como raspar todos os endereços de email de um site.
Screenshot Captura de tela do site inteiro into PDFs ou imagens - descubra como usar o raspador da Web do GrabzIt para capturar todas as páginas de um site inteiro.
Screenshot Extrair informações estruturadas de texto não estruturado - use o GrabzIt para extrair sentimentos, nomes, locais e organizações.

Raspar conteúdo diferente de HTML

Quando o raspador da Web se depara com PDFs, XML, JSON e RSS, ele o converte em uma aproximação HTML, o que permite que o raspador da Web o analise corretamente e você selecione o conteúdo que deseja extrair. Por exemplo, se você deseja analisar dados JSON, eles converterão os dados into uma representação hierárquica em HTML, como mostrado ao lado. Isso permite que você crie instruções de raspar normalmente.

De maneira semelhante, quando o raspador carrega um documento PDF, o PDF é convertido into HTML para permitir que imagens, hiperlinks, texto e tabelas sejam selecionados e raspados. No entanto, como um PDF não possui uma estrutura real, as tabelas são identificadas usando heurísticas e, portanto, nem sempre são precisas.

Opções de exportação

Essa guia permite que você escolha como deseja exportar seus resultados, incluindo opções como planilhas do Excel, XML, JSON, CSV, comandos SQL ou documentos HTML. Além disso, essa guia permite que o nome dos resultados do rascunho compactado seja definido. Se você estiver apenas baixando arquivos ou criando capturas da Web, não será necessário escolher uma opção de exportação, pois você receberá apenas um arquivo ZIP contendo os resultados. Essa guia também permite que você especifique como deseja enviar os resultados. Você pode enviar os resultados via Amazon S3, Dropbox, Notificação de Email, FTP e WebDav.

A opção final é um URL de retorno de chamada, que permite que os resultados de raspar sejam processados ​​em seu aplicativo usando nosso API de raspar.

O nome de arquivo dos resultados compactados ou de cada arquivo de dados, se você solicitar que sejam enviados separadamente, pode ser definido desmarcando a opção Usar nome de arquivo padrão e definindo o nome de arquivo desejado. Além disso, um carimbo de data / hora pode ser adicionado ao seu nome de arquivo, colocando {GrabzIt_Timestamp_UTC+1} no nome do arquivo. O +1 denota a diferença em horas do UTC.

Você também pode ver os resultados de uma raspagem clicando no Ver resultados botão, ao lado de seu arranhão, isso mostrará os resultados de raspagem em tempo real, bem como os anteriores realizados nas últimas 48 horas.

Raspar agendamento

Ao criar um web scrape, a guia Agendar Scrape permite que você defina quando deseja que o scrape comece e, se quiser que ele se repita, com que frequência isso deve acontecer. O scrape também pode ser configurado para ser executado quando uma alteração em uma página da web for detectada. Para fazer isso Iniciar quando uma página da web muda caixa de seleção e insira o URL da página da web a ser monitorada, junto com o Seletor CSS da parte da página que você está intinteressado. É importante que uma pequena parte da página seja selecionada para evitar falsos positivos devido a alterações inconseqüentes.

Monitorando e depurando raspas

Depois que o rascunho da web inicia, o ícone de status muda para e as páginas processadas começarão a aumentar com o tempo. Um instantâneo em tempo real do progresso das raspar é produzido regularmente, com um arquivo de log sendo gerado, juntamente com uma captura de tela regular da última página da Web que o raspador encontrou. Isso permite que você veja o que está acontecendo durante a raspagem. Para encontrar essas informações, clique no ícone de expansão ao lado do seu raspar e clique em Espectador para o arranhão você é inttestado. Isso deve detalhar se houve algum erro, como problemas nas instruções de raspar.

Depois que a raspagem for concluída com êxito, o ícone de status mudará para , se não houver resultado abrindo o Visualizador, o log e a última captura de tela poderão informar o que deu errado.

Um dos problemas mais comuns relatados nos logs é que não há um atraso de renderização suficiente para raspar a página, geralmente um pequeno aumento no Atraso no carregamento da página encontrado no Opções de raspar guia é suficiente para a maioria dos sites.