linux下从HTML到c++的关键字提取

Extracting key words from HTML to C++ under linux

本文关键字:关键字 提取 c++ 下从 HTML linux      更新时间:2023-10-16

我正在做一个简单的客户机-服务器项目。客户端是用Java编写的,它将关键字发送到Linux下编写的c++服务器,并接收最佳排名的url列表(取决于关键字的出现次数)。服务器的工作是遍历一些url来搜索关键字并返回最合适的url。现在的问题是,我必须解析HTML网站,以找到出现的关键字,加上我需要从访问的页面提取链接,以搜索他们。我的问题是,我可以用哪个库来做到这一点?记住只有c++ linux库适合我。有一些类似的主题,所以我试着通过他们中的大多数,但有些库只解析html文件,我不想下载我访问的每个网站,但解析它的飞行,只是存储它的排名和url。其中一些在我看来有点复杂——例如,首先将HTML解析为XML或其他东西,然后最后用c++处理结果。是否有一些简单而足够的东西来完成我需要它做的事情?如有任何建议,不胜感激。

我认为正则表达式不适合HTML解析。我正在使用libxml2,我非常喜欢它——易于使用、可移植且速度极快。

要使用C/c++从web获取url,可以使用libcurl库。要从站点中解析url和其他不太容易的东西,您可以使用regex库。

将HTML标签与实际内容分开也可以不使用库来完成。

对于更高级的东西,可以使用Qt提供的类,如q网页(它使用WebKit),允许访问页面的DOM-Model和提取单个HTML对象(例如单个单元格表)相当容易。

您可以尝试练习-c。它是一个功能强大的xml解析库。它支持动态读取xml, dom和sax解析。