2013-05-16 38 views
1

我正在构建一些能够或多或少地从任意网站提取关键信息的东西。例如,如果我抓取了一份麦当劳页面,想要通过编程的方式了解麦当劳的开幕式和闭幕时间,那么做一个聪明的方法是什么?如何巧妙地从HTML页面提取信息?

在一般情况下,也许我也想知道麦当劳是卖鸡翅还是麦当劳的地址。

我在想的是我将有一个特定的案例time,wingsaddress并且具有这三种情况中的每一种都是唯一的代码。

但我不知道我该如何解决这个问题。我已经将网站抓取,HTML和相关信息已经解析为JSON。我目前的做法是找到title标签,并检查title标签是否包含关键词,如addresslocation等。如果title包含那些key words,那么我将查看当前页面并识别与地址类似的内容块,如内容为城市或国家或内容的词StStreet

我想知道是否有更好的方法来寻找关键数据,并寻找更好的起点或反弹一些想法和whatnot。或者即使有很好的文章可以阅读,但这也会很棒。

让我知道如果这不清楚。

感谢您的帮助。

回答

2

为了解析这样的HTML页面,你必须知道它们的结构。这个问题没有通用的解决方案。每个网页都需要自己的解决方案。但是,一种好的方法是确保HTML代码也是有效的XML,然后在已知位置使用use XPath to access elements。也许甚至有一个像标准HTML解决方案的XPath(它并不总是有效的XML)。通过这种方式,您可以为每个页面定义一组XPath,如果这些页面存在特定元素,那么这些XPath就会提供给您。