搜索私有数据库的自定义搜索引擎

时间:2012-04-03 06:44:15

标签: php html search search-engine

我正在寻找能够搜索MySQL数据库并以与Google搜索类似的方式返回结果的搜索引擎。有关我正在寻找的内容的示例,您可以查看

http://historio.ushttp://saveandsearch.com/

这两个应用程序都允许您将网站保存到您自己的个人数据库中,然后再搜索它们。它就像一个个人谷歌搜索引擎,你只能填写你喜欢的网站。因此,它不是搜索整个网络,而只搜索已添加到其数据库的网站。

我是否可以使用某种开源搜索引擎作为起点?

1 个答案:

答案 0 :(得分:0)

您在这里寻找的搜索引擎只是数据库。您将数据插入数据库,然后通过userid和关键字进行搜索。它并不比那更复杂。

我举一个例子(只是一些指针,SQL)。用户登录您的系统并获得用户ID 7,然后他进入新网站“www.newsite.com”,您将其输入您的数据库。

insert into sites (id,sitename) values (site_new_id, 'www.newsite.com');
insert into user_sites(userid,siteid) values (7,site_new_id);

现在接下来是困难的部分,你需要知道网站的关键字是什么。在那里你必须做一些研究,如何做,也许有人知道现成的模块(也许这就是你实际问的)。以某种方式检查关键字(使用cURL或其他东西)。将这些关键字记录到表中,并将这些关键字链接到网站。

insert into keywords(id,keyword) values (keyword_new_id,'awesome');
insert into keywords(id,keyword) values (keyword_new_id2,'software');
insert into keywords(id,keyword) values (keyword_new_id3,'here');

insert into site_keywords(siteid,keywordid) values (site_new_id,keyword_new_id);
... etc

现在用户再次登录并使用关键字“awesome”进行搜索。您进行了查询:

SELECT sitename 
  FROM sites s, keywords k, site_keywords sk, user u
 WHERE k.keyword = 'awesome' AND k.id=sk.keywordid AND sk.siteid=s.id
   AND u.site_id = s.id AND u.id = 7

这样的事情。现在我想到了,你问过这个引擎的来源,我不知道,呃,对不起。但是您可以使用以下提示构建自己的一个:/