1

Я хочу собрать некоторые данные, подобные этой http://www.newcardealers.ca/en/Dealers/List-A.aspx

И вставьте имя, адрес, номер телефона, адрес электронной почты и т.д. В базу данных. Есть ли какое-то программное обеспечение, которое я могу использовать, чтобы взять веб-страницу, разрешить мне указать некоторые регулярные выражения или что-то еще, а затем выложить все совпадающие данные в CSV или какой-либо формат, легко вставляемый в БД?

2 ответа2

2

К вашему сведению, mozenda работает очень хорошо и очень проста в использовании ... но у них есть только бесплатная пробная версия, и их маркетинговая стратегия очень сомнительная.

1

Один из способов сделать это - написать свой собственный скребок. это

using HtmlAgilityPack;

...

HtmlDocument doc = new HtmlWeb().Load("http://www.newcardealers.ca/en/Dealers/List-A.aspx");
foreach (HtmlNode td in doc.DocumentNode.SelectNodes("//td[@width='268']"))
{
    Console.Write(td.SelectSingleNode("span[@class='BodyTextBold']").InnerText);
    Console.WriteLine(td.SelectSingleNode("span[@class='BodyText']").InnerText.Replace("\t\t\t\t", "\r\n"));
}

производит это

A.M. FORD SALES LIMITED
2795 Highway Drive
Trail, BC V1R2T1
Telephone : 250 364-0202                              http://www.amford.com               amford@amford.com         
ABBOTSFORD CHRYSLER LTD.
30285 Automall Drive
Abbotsford, BC V2T5M1
Telephone : 604 857-8888                              http://www.abbotsfordchrysler.com               paul@abbotsfordchrysler.com           
ACURA OF LANGLEY
19447 Langley ByPass
Surrey, BC V3S6K1
Telephone : 604 539-2111                              http://www.acuraoflangley.com               acura_info@acuraoflangley.com         
...

Не идеально, но вы видите, куда это идет.

Не уверен, как автономное приложение будет знать, как анализировать это автоматически.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .