Paano Gumawa ng Search Engine sa PHP at MySQL

Bakit mo gustong gumawa ng search engine pa rin? Mayroon nang isang search engine upang mamuno sa kanilang lahat. Magagamit mo ang Google para maghanap ng halos kahit ano sa Internet at duda ako na magkakaroon ka ng parehong kakayahan sa pag-compute at storage gaya ng malaking G.

Kaya bakit gumawa ng iyong sariling search engine? — Para kumita syempre!

…at maging sikat bilang tagalikha ng susunod na malaking search engine o dahil bilang isang programmer o engineer gusto mo ang mga hamon. Ang paggawa ng search engine para sa pampublikong Internet ay nakakalito at kung ikaw ay katulad ko gusto mong lutasin ang mga nakakalito na problema.

Ang ikatlong application ay isang customized, mataas na bilis ng paghahanap sa site para sa iyo ng malaking libu-libong mga pahina ng website. Ang isang na-index na search engine ay magiging mas mabilis kaysa sa isang buong text na function sa paghahanap at kung ang paghahanap sa site ng Google ay hindi sapat na flexible para sa iyong site maaari kang gumawa ng iyong sariling paggana sa paghahanap.

ANG MGA BATAYAN NG PAGHAHANAP

Ang batayan ng anumang MALAKING search engine ay isang word to web page index, karaniwang isang mahabang listahan ng mga salita at kung gaano kahusay ang kaugnayan ng mga ito sa iba't ibang mga web page.

Upang makagawa ng isang search engine kailangan mong gawin ang apat na bagay:

* Magpasya kung anong mga pahina ang kukunin at kukunin ang mga ito
* I-parse ang mga salita, parirala at link mula sa pahinagoogle-custom-se
* Magbigay ng marka sa bawat keyword o pangunahing parirala na nagsasaad kung gaano kahusay ang kaugnayan ng parirala sa mga pahinang iyon at iimbak ang mga marka sa index ng search engine
* Magbigay ng paraan para ma-query ng mga user ang index at makakuha ng listahan ng mga tumutugmang web page

Hindi ito mahirap para sa isang batikang programmer. Magagawa ito sa isang araw kung alam mo ang mga regular na expression at may ilang karanasan sa HTML at mga database.

Ngayon ay mayroon ka nang gumaganang search engine, magdagdag lamang ng maraming computer at hard drive at malapit mo nang mai-index ang lahat ng Internet. Kung hindi ka handa na pumunta sa ganoong kalayuan, ang isang terabyte disk ay may index na humigit-kumulang 50 milyong mga pahina.

PAANO MAG-SCORE NG PAGES

Pagkatapos makumpleto ang pangunahing paggana sa paghahanap, maraming trabaho bago ang sinuman ay gustong gumamit ng iyong bagong makina. Hindi sapat ang isang index. Ang mahirap ay kung paano mag-iskor ng mga pahina upang mabigyan ang end user ng mga resulta ng paghahanap na pinaka-nauugnay sa kanyang ideya kung ano ang hinahanap ng hi.

Kakailanganin mong magpasya kung gaano kabigat ang ilalagay sa mga keyword sa tile tag, paglalarawan at mga pangunahing nilalaman ng web page. Upang gumawa ng mahusay na pagmamarka ay gusto mo ring palakasin ang mga keyword na makikita sa URL ng pahina at suriin ang anchor text ng mga papasok na link. Ang pagsubaybay sa mga papasok na link ay ang pinakakapaki-pakinabang at pinakamahirap sa itaas, kakailanganin mong panatilihin ang isang hiwalay na talahanayan ng database na may impormasyon sa lahat ng mga link sa pagitan ng mga pahinang iyong ini-index.

ANO ANG INDEX AT HINDI ANG INDEX

Ang iba pang mga hadlang na makikita mo kapag sinimulan mong i-index ang tunay na nilalaman ng Internet ay ang katotohanan na mayroong napakaraming walang kwentang basura na lumulutang sa kung saan-saan at sa huli ang iyong index ay magiging puno ng spam, mga affiliate na pahina, mga naka-park na domain, gumagana sa mga homepage na ginagawa nang walang nilalaman, link. mga sakahan na ginagamit ng mga search engine optimizer, mga mirror na site na gumagamit ng mga data feed para gumawa ng libu-libong page na may mga listahan ng produkto o iba pang reproduced na content atbp, atbp...

Kapag nag-i-index mula sa Internet, kailangan mong maghanap ng mga paraan upang i-filter ang junk na nilalaman mula sa kung ano talaga ang binabasa at hinahanap ng mga tao. Upang magsimula, maaari mong limitahan kung gaano kalalim sa mga sub directory ang iyong na-crawl, kung gaano karaming mga link hop mula sa isang pahina ng index ng domain ang iyong na-crawl at kung gaano karaming mga link sa bawat web page ang papayagan.

PAG-PARSING NG MGA WEBSITE

Mayroong isang milyong paraan, parehong tama at mali upang magsulat ng HTML at kapag nag-index ka mula sa Internet kakailanganin mong pangasiwaan ang lahat ng ito.

Kapag nag-parse ng mga keyword mula sa mga pahina hindi mo lang kailangan pangasiwaan ang kumpletong pamantayan ng HTML kundi pati na rin ang lahat ng hindi karaniwang paraan na hindi opisyal na sinusuportahan ng mga Internet browser.

Para mabasa ang lahat ng page, kakailanganin mo ring i-parse ang client side javascript, hawakan ang mga frame, CSS at iframe.
Ito ay isang malaking bahagi ng trabaho sa isang pangkalahatang search engine, upang mabasa ang lahat ng uri ng nilalaman.

BAKIT ANG DAMI NG URL?

Sa wakas, kakailanganin mong harapin ang katotohanan na maraming mga website ang may maraming mga URL na tumuturo sa parehong web page. Tingnan lamang ang halimbawang ito:

dmoz.org
www.dmoz.org
dmoz.org/index.html
www.dmoz.org/index.html

Ang lahat ng URL na iyon ay tumuturo sa parehong web page. Kung hindi ka gagawa ng espesyal na code upang pangasiwaan iyon malapit ka nang magkaroon ng 4 na resulta sa iyong search engine (isa para sa bawat URL) lahat ay pupunta sa parehong pahina. Hindi ka magugustuhan ng mga user.
Mayroon ding posibilidad ng mga string ng query kung saan ang isang session ID pagkatapos ng tandang pananong sa URL ay lilikha ng halos walang katapusang mga URL para sa parehong web page.

google.com?SID=4434324325325
google.com?SID=4387483748377
google.com?SID=7654565644466

Sa search engine magkakaroon ng isang talagang malaking bilang ng mga pahina na lahat ay naglalaman ng parehong nilalaman. Siyempre, ang mabilisang pag-aayos ay huwag mag-index ng mga pahina na may kasamang string ng query. O upang alisin ang string ng query mula sa mga pahina. Gumagana ito ngunit mag-aalis din ng maraming lehitimong nilalaman (isipin ang mga forum) mula sa iyong index.

Nasa iyo na ngayon ang lahat ng impormasyong kailangan mo upang makagawa ng isang site search engine. Kung pupunta ka para sa isang pangkalahatang Internet search engine mayroong maraming higit pang mga detalye na kailangan mong isama. Tulad ng robots.txt, mga mapa ng site, mga pag-redirect, proxy, pagkilala sa mga uri ng nilalaman, mga advanced na algorithm sa pagraranggo pati na rin ang paghawak ng mga terabyte ng data. Sasaklawin ko ang higit pang detalye sa isang artikulo sa hinaharap. Good luck sa iyong susunod na proyekto sa search engine!

KategoryaBlog
  1. Pingback:Mga Tweet na nagbabanggit ng TopTut.com – Mga Nangungunang Tutorial » Paano Gumawa ng Search Engine sa PHP at MySQL -- Topsy.com

  2. Pingback:TopTut.com – Mga Nangungunang Tutorial » Paano Gumawa ng Search Engine sa PHP … | Promosyon ng searchengine online

Mga komento ay sarado.