Ferramentas para capturar e converter a Web

Como preencher um conjunto de dados

Às vezes quando construindo um conjunto de dados no Raspador da Web mais valores são adicionados into uma coluna que outra. No exemplo abaixo, após a raspagem da primeira página, o nome John é adicionado à coluna Nome juntamente com três cores e, na página seguinte, o nome David é adicionado juntamente com outras duas cores. Para fornecer o seguinte conjunto de dados.

NomeCor
banheiroAmarelo
DavidVermelho
Verde
Azul
Roxa

No entanto, esta tabela é enganosa, pois não mostra qual nome foi encontrado com quais cores. Em vez disso, o pad O método pode ser usado para anexar automaticamente células vazias ao final das colunas do conjunto de dados até que todas as colunas tenham o mesmo comprimento. Um exemplo do pad O método usado é mostrado abaixo.

Data.save(Page.getTagValue({"class":{"equals":"Name"}}), 'Name', 'Color');
Data.save(Page.getTagValues({"class":{"equals":"Color"}}), 'Name', 'Color');
Data.pad();

Essas instruções de raspar produzem um conjunto de dados parecido com este.

NomeCor
banheiroAmarelo
Vermelho
Verde
DavidAzul
Roxa

Poderíamos melhorar ainda mais especificando o padValue parâmetro do pad método para ser o nome encontrado pelo raspador. Como neste exemplo, existe apenas um nome por página que as instruções de raspar se tornam.

var name = Page.getTagValue({"class":{"equals":"Name"}});
Data.save(name, 'Name', 'Color');
Data.save(Page.getTagValues({"class":{"equals":"Color"}}), 'Name', 'Color');
Data.pad(name);

O que coloca um nome em todas as células vazias da coluna de nome, como mostrado abaixo.

NomeCor
banheiroAmarelo
banheiroVermelho
banheiroVerde
DavidAzul
DavidRoxa