详细请看原址:
[url=http://blog.dadao40.com/u/lovehuahua/archives/2007/290.html]http://blog.dadao40.com/u/lovehuahua/archives/2007/290.html[/url]

大于内容为:
在好多论坛上都看见想怎么做一个自己的搜索引擎..功能如google,baidu
可都没用真正很好的答案.一般都是要么很死的那个行不通的方法.
要么就是只调用google,baidu等的方法.
那怎么才能做一个正真属于自己的搜索引擎呢?
不管是做为站内搜索也好.用作像google等搜索引擎的功能也好.
今天有空我就来说说.让大家参考一下.
当然.我这里只说一下核心的技术.要不要说也说不完了.对吧.再怎么说那是一个很复杂的系统了.
 
作为一个搜索引擎,首先它要能收到自己站点,或他人站点的页面,也就是说的爬虫,
然后对每一个页面分析,提取内容.链接(链接作为收录爬虫用,总不至于只收录主页吧,呵呵)
然后对内容分词,因为我们是中国人,.用的是中文.所以对内容要中文分词功能.(其实这也是一搜索引擎的核心技术了)
然后就是对所得信息的数据存放.因作为搜索引擎,收录的页面是很多很多的.如果浸透据存方结构不好.一存放的数量会很大.,二是在搜索的时候要能尽量快的在几万或几十万或更多的页面中搜到你想要的页面.这此都是很关键的问题.
 
这此问题都解决了.也就基本完成了一个搜索引擎.
 
那具体怎么做呢?
首先.我们要弄到一个较好的词库,来给中文分词功能使用.
因为我的BLOG只能上传最大400K的文件.所以没办法.我把这个词库存放在了
http://ask.dadao40.com/sharev.asp?id=55
里面.    大家可以进入后下载此词库,
 
然后我们来看一下怎么做数据库存储结构.
这里我用SQL数据库来做.
因为即然是搜索引擎.再用access来做也太不现实了..这种小数据库,我们就不应该用在这种地方了.当然如果你喜欢.你也可以用.
 
下面是创建数据库及结构的SQL语句.(习惯了用SQL查询器来做了,呵呵)
--创建数据库
create database MissHer
go
--选择数据库
use MissHer
go
--创建词库数据库
--drop table search_word_db
create table search_word_db
(
word_id bigint identity(1,1) primary key not null,
word_key varchar(50) not null,
word_info varchar(200)
)
go
--select count(*) from search_word_db

create table search_url_db
(
url_id bigint identity(1,1) primary key not null,
url_addr varchar(200),
url_title varchar(50),
url_con ntext,
url_uptime datetime,
url_get int default 0
)
go
create table wordtourl
(
word_id bigint foreign key references search_word_db(word_id) on delete cascade on update cascade,
url_id varchar(3000),
word_show varchar(3000)
)
go
select * from search_url_db
 
数据库也创建完成了.
search_word_db为字库数据表.

接着请进
[url=http://blog.dadao40.com/u/lovehuahua/archives/2007/290.html]http://blog.dadao40.com/u/lovehuahua/archives/2007/290.html[/url]