Visualizzazione dei risultati da 1 a 6 su 6

Hybrid View

  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2002
    Messaggi
    412

    Come si creano dei motori di ricerca?

    Vedendo un po' come è strutturato jobrapido, mi rendo conto che il sito non fa altro che proporre annunci lavorativi presi da portali nati proprio con questo preciso scopo.
    Ma la domanda che mi pongo è, l'indicizzazione è una cosa applicabile da tutti, oppure bisogna stringere accordi con ciascuno di questi siti "fornitori" che a loro volta devono mettere a disposizione tool e API da utilizzare?

    Certo che considerando moori di ricerca più generali tipo google mi risulta impossibile immaginare ad un meccanismo dl genere, quindi ad intuito direi che ci sono script che non fanno altro che aprire pagine web e memorizzarne il contenuto nei DB.

    A questo punto la domanda che mi pongo è come creare questi script? In che linguaggio sono scritti?

  2. #2
    Utente di HTML.it L'avatar di torn24
    Registrato dal
    Aug 2008
    Messaggi
    551
    Anche se molte persone , non ritengono wikipedia una gran fonte , ti può chiarire molto .
    Motore di ricerca
    http://it.wikipedia.org/wiki/Motore_di_ricerca

    Cuore del motore di ricerca , che può essere scritto in molti linguaggi diversi , ne esistono open source

    http://it.wikipedia.org/wiki/Crawler


    "Al giorno d'oggi Quasi tutto è relativamente facile da usare , ma quando si vuole provare a realizzare qualcosa ci si accorge di quanto sono complicate "
    Ultima modifica di torn24; 11-01-2014 a 17:06
    Tecnologia

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2002
    Messaggi
    412
    Ah ok quindi è il crawler la chiave di tutto.

    Ma mettiamo che io voglia creare un sito alla trovaprezzi.it e necessito di monitorare una precisa lista di fonti quali monclick, play.com e marcopoloshop.

    A questo punto punto per monitorare il codice sorgente di ciascuna di queste pagina non basterebbe scrivere questo semplice codice?

    Codice PHP:
    $variable1 fopen('http://monclick.com'"rb"); 
    echo 
    stream_get_contents($variable1);  
    $variable2 fopen('http://play.com'"rb"); 
    echo 
    stream_get_contents($variable2);  
    $variable3 fopen('marcopoloshop.com'"rb"); 
    echo 
    stream_get_contents($variable3);    //vabbè, lo so chesarebbe più professionale creare un ciclo che faccia in automatico invece di fare tutto manualmente con variabili distinte 
    Come ben sappiamo però questo non seriverebbe a molto perchè si limiterebbe a recuparare il codice sorgente dell'HTML che di per sé non contiene alcuna informazione sui prodotti in vendita.
    Quello che a me serve è recuperare la lista dei prodotti che solitamente avviene tramite la ricerca effettuata dai siti stessi.

    Ad intuito direi che basterebbe sostituire l'url di fopen con l'url di ricerca completo di variabili passate via GET, ovver:

    Codice PHP:
    fopen('http://www.monclick.it/risultati_ricerca?fh_view_size=10&fh_sort_by=-_match_rate,-orderby_piupopolari&fh_location=//root/it_IT/$s=led&testo=led'"rb"); 
    è così o non c'ho capito una mazza?
    Ultima modifica di American; 11-01-2014 a 18:52

  4. #4
    Quote Originariamente inviata da American Visualizza il messaggio
    Ah ok quindi è il crawler la chiave di tutto.

    Ma mettiamo che io voglia creare un sito alla trovaprezzi.it e necessito di monitorare una precisa lista di fonti quali monclick, play.com e marcopoloshop.

    A questo punto punto per monitorare il codice sorgente di ciascuna di queste pagina non basterebbe scrivere questo semplice codice?
    Sicuramente non con la fopen (che non mi risulta possa fare richieste HTTP), ma per un crawler "generico" il concetto è simile.
    Come ben sappiamo però questo non seriverebbe a molto perchè si limiterebbe a recuparare il codice sorgente dell'HTML che di per sé non contiene alcuna informazione sui prodotti in vendita.
    Se il crawler (come ogni crawler) usa l'HTML in questione seguendo i link man mano acquisirebbe le pagine di tutti i prodotti. Questo basta per un motore di ricerca "normale" (che si limita ad indicizzare il testo, e a valutare l'importanza della pagina rispetto alle parole chiave in base - tra le altre cose - ai link che portano ad essa), ma per un motore di ricerca di prezzi si pone ovviamente il problema che dici: chi mi dice da dove estrarre le informazioni che mi servono?

    Si può lavorare essenzialmente in due modi:
    • si fa una ricerca in base a pattern per cercare di estrarre stringhe che "abbiano l'aspetto" di un prezzo; non è un metodo particolarmente affidabile, ma può andar bene in situazioni in cui questa informazione è semplicemente un "di più" non essenziale;
    • usando una qualche genere di API stabilita con il sito target; in quel caso il gestore del sito di ecommerce si mette d'accordo con il motore di ricerca e stabiliscono una qualche genere di API; questo garantisce informazioni accurate e aggiornate al motore di ricerca, ed è il metodo che normalmente si usa per motori di ricerca "specifici" (se guardi in un sito come trovaprezzi e simili vedrai che c'è sempre una pagina per l'affiliazione).
      Nota che un metodo del genere è anche parzialmente usato da motori di ricerca "generici" - vedi Google e le sitemap.
    Amaro C++, il gusto pieno dell'undefined behavior.

  5. #5
    Utente di HTML.it L'avatar di torn24
    Registrato dal
    Aug 2008
    Messaggi
    551
    Ciao forse sono stato frainteso , anche se ti ho risposto , sono una DELLE POCHE persone che non è capace di scrivere un motore di ricerca !!
    Tecnologia

  6. #6
    Utente di HTML.it
    Registrato dal
    Nov 2002
    Messaggi
    412
    Ho finito di creare un motore di ricerca (se così si può definire) che manda delle richieste HTML ad un sito di shopping online e renderizza poi i risultati sul mio dominio.
    Ma mi chiedo, questa cosa è legale? Rischio qualcosa?

    Mi chiederete quale sia la necessità di fare una cosa che già fa il sito stesso, in realtà non è così.
    Il sito è strutturato in sezioni, ad esempio, nel caso dei videogiochi questi sono catalogati a seconda della console di riferimento.
    Quindi sul sito originale se voglio avere un elenco dei vari giochi, devo spulciarmi le varie sezioni una ad una.

    Per via di questa scomodità mi son creato uno script che mi visualizza tutti i prodotti del sito in maniera chiara e concisa.
    Si può fare o è illegale?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.