-2

我已经爬取了一些汽车网站并试图从这些网站中提取信息。我需要以下信息 - Vin、里程、价格和位置。我尝试了正则表达式方法,但它无法扩展,因为我有大约 20000 个网站要提取。我想尝试机器学习进行提取。

一些上下文:我下载的所有网页都有 vins。我使用正则表达式来找出它。在某些网页中,价格表示为以下任何词 - 价格,市场价格,eprice,互联网价格,MSRP。有一些价格文本被划掉,并提供另一个较低的价格,以防打折。我希望我的程序考虑到这一点,并忽略划掉的价格考虑其他价格。里程表示为里程或里程。

我想过使用 wrapperduction ,但是如果网站更改了网站的模板,那么这种方法将不起作用。此外,这种方法需要时间来为每个网站的每个模式训练一个分类器。

那么我应该使用什么样的方法或算法来从网页中提取价格里程和位置。

4

2 回答 2

1

有不同的方法来解析一个 html 站点:

  1. 你可以使用正则表达式

  2. XPath也可用于选择内容

  3. 但最好的方法是使用HTML Agility Pack

HTML 敏捷性示例:

var doc = new HtmlWeb().Load(url);
var comments = doc.Descendants("div")
                  .Where(div => div.GetAttributeValue("class", "") == "comment");

在这里,您可以找到通过 C# 解析 HTML 字段的不同方法的概述(包括示例)

于 2012-05-31T11:51:21.343 回答
0

你可以看看HtmlAgilityPack。它允许您使用 CSS 选择器解析 HTML 并提取必要的信息。它可以使您的代码以某种方式对网站设计和结构的变化更具弹性。

于 2012-05-31T11:48:42.513 回答