Memiliki Mesin Telusur (Search Engine) sendiri seperti Google dengan Sphider

Antefer.web.id
0 Comments
Saat ini milyaran informasi yang tersedia di dunia maya, baik video, gambar, musik, artikel dan lain-lain. Agar dapat memudahkan untuk menemukan informasi yang kita maksud, kita membutuhkan sebuah mesin pencari (search engine).

Saat ini salah satu mesin pencari yang paling favorit dimiliki oleh Google. dengan kecepatan dan kepintaran mesin pencari Google. maka kita dapat menemukan informasi dengan cepat dan akurat. Dalam menemukan informasi Google memiliki sebuah program yang biasa dikenal robot atau spider, yang berfungsi untuk menelusuri seluruh informasi yang ada dalam sebuah situs, tentunya dengan izin si pemilik dan pengelola situs tersebut. 

Berikut sebuah project open source search engine berbasis PHP, yang memiliki sebuah robot atau spider untuk mengumpulkan secara otomatis informasi-informasi pada sebuah situs. Project ini memang sudah lama tapi paling tidak kita dapat mengetahui prinsip kerja sebuah mesin telusur.

Pertama-tama download project disini. setelah didownload ekstrak di direktori server. Siapkan database mysql dan ada beberapa table yang harus dibuat.

create table sites(
site_id int auto_increment not null primary key,
url varchar(255),
title varchar(255),
short_desc text,
indexdate date,
spider_depth int default 2,
required text,
disallowed text,
can_leave_domain bool) ENGINE = MYISAM;
create table links (
link_id int auto_increment primary key not null,
site_id int,
url varchar(255) not null,
title varchar(200),
description varchar(255),
fulltxt mediumtext,
indexdate date,
size float(2),
md5sum varchar(32),
key url (url),
key md5key (md5sum),
visible int default 0,
level int) ENGINE = MYISAM;
create table keywords (
keyword_id int primary key not null auto_increment,
keyword varchar(30) not null,
unique kw (keyword),
key keyword (keyword(10))) ENGINE = MYISAM;
create table link_keyword0 (
link_id int not null,
keyword_id int not null,
weight int(3),
domain int(4),
key linkid(link_id),
key keyid(keyword_id)) ENGINE = MYISAM;
create table link_keyword1 (
link_id int not null,
keyword_id int not null,
weight int(3),
domain int(4),
key linkid(link_id),
key keyid(keyword_id)) ENGINE = MYISAM;
create table link_keyword2 (
link_id int not null,
keyword_id int not null,
weight int(3),
domain int(4),
key linkid(link_id),
key keyid(keyword_id)) ENGINE = MYISAM;
create table link_keyword3 (
link_id int not null,
keyword_id int not null,
weight int(3),
domain int(4),
key linkid(link_id),
key keyid(keyword_id)) ENGINE = MYISAM;
create table link_keyword4 (
link_id int not null,
keyword_id int not null,
weight int(3),
domain int(4),
key linkid(link_id),
key keyid(keyword_id)) ENGINE = MYISAM;
create table link_keyword5 (
link_id int not null,
keyword_id int not null,
weight int(3),
domain int(4),
key linkid(link_id),
key keyid(keyword_id)) ENGINE = MYISAM;
create table link_keyword6 (
link_id int not null,
keyword_id int not null,
weight int(3),
domain int(4),
key linkid(link_id),
key keyid(keyword_id)) ENGINE = MYISAM;
create table link_keyword7 (
link_id int not null,
keyword_id int not null,
weight int(3),
domain int(4),
key linkid(link_id),
key keyid(keyword_id)) ENGINE = MYISAM;
create table link_keyword8 (
link_id int not null,
keyword_id int not null,
weight int(3),
domain int(4),
key linkid(link_id),
key keyid(keyword_id)) ENGINE = MYISAM;
create table link_keyword9 (
link_id int not null,
keyword_id int not null,
weight int(3),
domain int(4),
key linkid(link_id),
key keyid(keyword_id)) ENGINE = MYISAM;
create table link_keyworda (
link_id int not null,
keyword_id int not null,
weight int(3),
domain int(4),
key linkid(link_id),
key keyid(keyword_id)) ENGINE = MYISAM;
create table link_keywordb (
link_id int not null,
keyword_id int not null,
weight int(3),
domain int(4),
key linkid(link_id),
key keyid(keyword_id)) ENGINE = MYISAM;
create table link_keywordc (
link_id int not null,
keyword_id int not null,
weight int(3),
domain int(4),
key linkid(link_id),
key keyid(keyword_id)) ENGINE = MYISAM;
create table link_keywordd (
link_id int not null,
keyword_id int not null,
weight int(3),
domain int(4),
key linkid(link_id),
key keyid(keyword_id)) ENGINE = MYISAM;
create table link_keyworde (
link_id int not null,
keyword_id int not null,
weight int(3),
domain int(4),
key linkid(link_id),
key keyid(keyword_id)) ENGINE = MYISAM;
create table link_keywordf (
link_id int not null,
keyword_id int not null,
weight int(3),
domain int(4),
key linkid(link_id),
key keyid(keyword_id)) ENGINE = MYISAM;
create table categories(
category_id integer not null auto_increment primary key,
category text,
parent_num integer
) ENGINE = MYISAM;
create table site_category (
site_id integer,
category_id integer
) ENGINE = MYISAM;
create table temp (
link varchar(255),
level integer,
id varchar (32)
) ENGINE = MYISAM;
create table pending (
site_id integer,
temp_id varchar(32),
level integer,
count integer,
num integer) ENGINE = MYISAM;
create table query_log (
query varchar(255),
time timestamp(14),
elapsed float(2),
results int,
key query_key(query)
) ENGINE = MYISAM;
create table domains (
domain_id int auto_increment primary key not null, domain varchar(255)
) ENGINE = MYISAM;
Untuk setting koneksi database dan setting search engine ada di  setting/database.php dan setting/conf.php
1. setting/database.php
 $database="sphider";
 $mysql_user = "root";
 $mysql_password = ""; 
 $mysql_host = "localhost";
 $mysql_table_prefix = "";

2. setting/conf.php
// Nama Sphider/Robot anda
$user_agent    = '.....';
//administrator email 
$admin_email  = 'admin@localhost';

atau bisa juga disetting di tab "setting" setelah log in ke admin
Jangan lupa untuk merubah username dan password admin yang berada di admin/auth.php:
 $admin = "admin";
 $admin_pw = "admin";

setelah siap semua..kita perlu mendaftarakan sebuah website di halaman admin untuk melakukan index atau proses pengumpulan informasi yang akan dilakukan oleh program robot yang dimiliki projek ini. Masuk halaman admin.
contoh :
http://web.anda/direktori.seach.engine/admin/admin.php

Setelah masuk halaman admin maka akan muncul halaman berikut:


Ada beberapa tab yaitu :
  1. Sites : Untuk menambahkan situs/website yang akan dilakukan penulusuran
  2. Categories : Manambahkan jenis website / pengelompokan website
  3. Index : untuk melakukan proses index (pengambilan informasi)
  4. Clean tables : mengelola data
  5. Settings : setting pada search engine dan robot/spider
  6. Statistics : statistik penelusuran dan index
  7. Database : backup database
  8. Logout
untuk proses index langsung ke tab index :

pilih Full (tergantung kebutuhan) kemudian "Start Indexing", maka akan muncul proses indexing dan tunggu hingga selesai.

setelah selesai index maka data penulusuran sudah tercatat di database.

Untuk pengelompokan website yang akan di index bisa melalui tab ""Categories" dan tab "Sites".
Demikian tentang mesin telusur sederhana ini semoga dapat bermanfaat dan dikembangkan sesuai kebutuhan.

untuk demo bisa dilihat disini.

sumber : http://www.sphider.eu/

Posting Komentar

0Komentar

Posting Komentar (0)

#buttons=(Ok, Go it!) #days=(20)

Our website uses cookies to enhance your experience. Check Now
Ok, Go it!