Precisa gravar um arquivo .bat para selecionar todo o texto em uma página da Web e colar o texto em um novo arquivo txt

-1

Abaixo está o que eu tenho até agora, que abre o chrome, vai para o URL e abre um novo arquivo .txt. Preciso selecionar todo o texto da página, copiá-lo, colá-lo no arquivo BigData.txt e salvar o arquivo na área de trabalho. Isso é possível?

CD C:\Program Files (x86)\Google\Chrome\Application\   
start chrome.exe http://en.wikipedia.org/wiki/Big_data
CD C:\Users\TomD\Desktop
echo >BigData.txt
end;

Obrigado a todos

    
por Tom Davidson 19.03.2013 / 21:21

2 respostas

4

Você está realmente falando sobre web scraping , que será difícil apenas com arquivos em lote, especialmente se você estiver procurando apenas uma parte específica de uma página.

Se você quisesse obter toda a página da Web, sugiro que você obtivesse uma versão do wget ou a curvar . Ambos podem ser facilmente integrados em um script em lote e baixar o HTML para uma página da Web. Observe que o motivo real para usá-los em vez do Chrome é que eles são ferramentas de linha de comando, em oposição a um navegador baseado em GUI, como o Chrome.

Depois de ter o HTML, você provavelmente precisará usar uma linguagem de script real para analisar o arquivo HTML e extrair apenas o texto principal do artigo.

    
por 19.03.2013 / 21:42
2

Primeiro, baixe "wget.exe" e coloque-o na mesma pasta do seu .bat (ou em qualquer pasta do seu caminho).

Em seguida, use:

set urlPath=www.wikipedia.com
set urlFile=index.html
set urlPathOuput="C:\users\%username%\Desktop"
set urlFileOutput=WiKiPeDiA.txt
wget %urlPath%/%urlFile%
type %urlFile% > %urlPathOuput%\%urlFileOutput%
del %urlFile%

Alterar:

www.wikipedia.com para a pasta da página da web

index.html para o arquivo da página da web

C: \ usuários \% nome do usuário% \ Desktop para uma pasta no seu pc

WiKiPeDiA.txt para o arquivo a ser gerado na pasta definida anteriormente

PASSO A PASSO

Primeiro, o código salva algumas variáveis. Então, wget faz o download do arquivo da página da web para a pasta% cd% (aqui, ele baixaria "www.wikipedia.com/index.html").

Em seguida, o conteúdo do .html baixado será salvo em um arquivo de texto simples (aqui, um novo arquivo será criado em "C: \ users \% username% \ Desktop" (o desktop para o usuário atual) chamado "WiKiPeDiA.txt").

Finalmente, o arquivo da página da web é excluído.

Nota:

Se você quiser salvar o conteúdo do arquivo com as tags, esse seria o código.

Se o que você deseja é salvar o texto exibido pelo navegador, você precisará analisá-lo e filtrá-lo antes de salvá-lo no arquivo.

Eu nunca fiz isso, mas é o que eu faria:

1. set linenumber=0
2. set characternumber=0
3. find the first "<", after linenumber&characternumber and save it in linenumber2 and the characternumber2.
4. echo everything from linenumber&characternumber to linenumber2&characternumber2.
5. find the first ">" after the previous "<" which was in linenumber2, characternumber2. Save it in linenumber and characternumber.
6. goto step 3

Espero que tenha ajudado!

    
por 05.04.2013 / 23:37