假设我有几个来自不相关网站的HTML页面,但它们包含相同的整体信息。我想以灵活的方式提取该信息,即我只想为所有页面(理想情况下,一个)编写少量数据提取器。假设字段是(使用博客示例)author, date, title, text
。表示这些的HTML标记的类对于每个页面可能完全不同,但仍以大致相同的方式显示在页面上。例如,从CNN获取this post,从Gawker获取this post。两者都包含相同的信息 - 我想要的信息 - 实际显示时页面上的某个位置。有没有一种很好的方法来提取数据?编写单独的提取器是一种选择,但不是一个好选择;我想要使用的数据集中有大约一千种样式的文档。
答案 0 :(得分:0)
你能做到这一点的唯一方法是在所有这些网站中找到一个共同元素(例如,它们共享相同的DOM结构,或具有相同的ID,或者在之前的标记中以相同的内容开头,如{ {1}})。
否则,您需要为每个案例编写不同的规则或正则表达式。
当然,除非您编写一个如此智能的算法,即使使用不同的HTML也能够识别内容意图/含义 - 这不是简单的,也不是以任何方式快速编写。