Ciao ragazzi, come da titolo, dovrei creare un motore di ricerca simile a google, ovviamente non voglio combatterlo poichè è praticamente impossibile.. Come posso fare a crearlo?
Ciao ragazzi, come da titolo, dovrei creare un motore di ricerca simile a google, ovviamente non voglio combatterlo poichè è praticamente impossibile.. Come posso fare a crearlo?
L'idea base è che il crawler partendo da una pagina naviga tutti i link che vi trova e continua allo stesso modo per ogni pagina dove arriva.
Nella pratica devi capire cosa vuoi che faccia davvero bene il tuo motore di ricerca.
Trovare tutte le pagine che contengono una parola ad esempio è diverso da restituire i risultati più utili agli utenti.
0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,610
,987,1597,2584,4181,6765,10946,17711,28657,
http://www.successionedifibonacci.it
La spirale logaritmica http://www.successionedifibonacci.it...l/?q=it/node/9
Se non proponi neanche un'idea o un piccolo progetto, l'unica risposta plausibile è:
"studia..."
![]()
Sempre le stess cose.. studia studia studia, io ora mi sto orientando capendo come funziona, il linguaggio di programmazzion ecc.. alcuni linguaggi come php ajax javascript css ecc li so.. Però devo capire come funziona... vorrei creare un motore di ricerca .. non voglio diventi famoso però mi serve..
Non ho capito sta cosa..Trovare tutte le pagine che contengono una parola ad esempio è diverso da restituire i risultati più utili agli utenti.
Google non fa la semplice ricerca di testo nelle pagine. Google decide quali pagine hanno un buon testo, le valuta e se lo reputa necessario allora non le indicizza affatto.
Se vuoi sapere come si fa a fare un crawler allora sappi che di solito si usano linguaggi come il C e si creano applicazioni che hanno la capacità di lavorare su più pagine contemporanemente. Proprio per il gran numero di pagine che si possono raggiungere i programmatori creano software che apre più istanze di se stesso anche su più di un computer fino a che non raggiunge un certo numero di pagine analizzate.
Ho detto analizzare e non ho spiegato cosa vuol dire perché va deciso.
Ad esempio potresti scegliere di non memorizzare niente e quando cerchi la parola "Pippo" avviare il tuo ragno e fargliela cercare nel web.
Potresti invece scegliere di salvare tutte le pagine web in un database così da rendere piu' veloci le ricerche.
Potresti registrare solo le parole chiave delle pagine....o altro.
Google per fare tutto questo e per farlo molto in fretta usa degli algoritmi complessi che utilizzano della matematica abbastanza avanzata. Nel dettaglio non saprei quindi dirti "google come fa", ma in rete da qualche parte ci sarà scritto.
0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,610
,987,1597,2584,4181,6765,10946,17711,28657,
http://www.successionedifibonacci.it
La spirale logaritmica http://www.successionedifibonacci.it...l/?q=it/node/9
Perfetto, allora dovresti sprecare qualche riga in più per far capire di cosa hai bisogno.
Un motore di ricerca deve memorizzare necessariamente delle informazioni... deve avere un crawler (spider) che segue i collegamenti ipertestuali di una pagina web, indicizza il contenuto, etc. Devi anche studiare un algoritmo di stesura dei risultati, associando un punteggio (pagerank) ai link, in base a parametri che stabilisci tu. Non è proprio semplicissimo.
senza parlare della semantica...Originariamente inviato da Admdebian
Google non fa la semplice ricerca di testo nelle pagine. Google decide quali pagine hanno un buon testo, le valuta e se lo reputa necessario allora non le indicizza affatto.
......![]()
Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle
il mio profilo su PHPClasses e il mio blog laboweb
Inoltre o usi il C oppure il PHP lo dovresti usare come linguaggio di scripting da eseguire in locale senza appesantirlo con apache. Il fatto che google funzioni da una pagina web non vuol dire che il suo cuore funzioni tramite php e javascript.
0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,610
,987,1597,2584,4181,6765,10946,17711,28657,
http://www.successionedifibonacci.it
La spirale logaritmica http://www.successionedifibonacci.it...l/?q=it/node/9
CApisco, beh io vorrei svolgere un lavoro che ricerca in base alle paroel chiavi.. quindi creerei un programma che mi riesce a prendere le pagine, le analizza in base a cosa?
Mi sono ben guardato dal tirare in ballo questo problema. Google sa davvero troppo...Originariamente inviato da dottwatson
senza parlare della semantica...![]()
Tornando all'algoritmo. Se deve esaminare le parole chiave:
0) il programma parte solo se il link in esame non è già presente nel DB e solo se il database non contiene già troppe pagine (es. 10.000?)
1) carica la pagina ( $pg=include("./ok.html"); ).
2) archivia nel db il link alla pagina e le parole chiave contenute nel metatag specifico.
3) analizza il body della pagina cercando i link (<a href="">).
4) per ogni link lanci un'altra volta il programma facendolo partire dal corrente link
---
A questo punto con le query mysql puoi interrogare il tuo DB alla ricerca di parole chiave.
0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,610
,987,1597,2584,4181,6765,10946,17711,28657,
http://www.successionedifibonacci.it
La spirale logaritmica http://www.successionedifibonacci.it...l/?q=it/node/9