首先通过http协议向某个门户网站发送请求,然后对方服务器发回我所需的html页面,然后通过分析提取它中间的关键字,URL,还有内容,接着建立数据库通过存入数据库后用户输入关键字找到相关的词条返回URL,内容还有超链接(大概是这样讲的),现在我想通过试验比如一个门户“新浪”来实现一下,具体爬虫(如果有现成的,先用下他的代码)怎么放,还有具体的步骤(再细划分)不是太清楚。
你用的是qt,那么web界面就省了,界面上拖一个框,输入搜索串,回车就出来网页信息了。
爬虫(可以用别人的,把网页爬下来就行了,忽略掉url等信息) --> 用正则表达式去提取html中的标题和正文 --> 用字典树写个简单的分词器(满足最大正向匹配和逆向匹配足够了),词库可以随便搜一个 --> 建立倒排索引 --> http://www.ruanyifeng.com/blog/2013/03/tf-idf.html 这篇文章会告诉你怎么计算关键词权重 --> 。
简单实现估计代码量也就3000以内
搜索引擎的核心是算法,Qt与搜索引擎一点关系都搭不上,不过Qt的网络库倒是有用。
搜索引擎简单实现就是,网络爬虫,然后索引网页,存储在数据库中,用户搜索时候,查找数据库,返回查找的条目。关键是如何分析网页,和查找匹配的网页。