Un progetto Spider Bot

April 8

Un progetto Spider Bot


Anche se non si possiede un robot in grado di preparare la cena o rastrello foglie, si può almeno creare un robot per obbedire ai comandi on-line con un po 'di programmazione di know-how. Un progetto ragno bot consente ai programmatori di creare un programma, chiamato "bot", a strisciare numerose pagine Web ed estrarre le informazioni per un uso successivo. Molte aziende ben note si basano su bot ragno a "strisciare" il Web e recuperare i dati. Anche se gli esempi di codice appaiono spesso in C # e .NET, si può facilmente adattarli a qualsiasi lingua.

Ambiente

Per iniziare il progetto, creare un nuovo file nell'ambiente di sviluppo di scelta, come Eclipse o Visual Studio. È possibile utilizzare quasi tutte le lingue insieme ad una libreria di classe appropriata per accedere e manipolare i dati. L'ambiente di sviluppo adeguato prevede quasi infinite possibilità di programmazione di Internet. Ad esempio, è possibile utilizzare le funzionalità di programmazione Web del vostro framework per creare un ragno per avvisare l'utente quando un prezzo è sceso o quando una pagina Web ha incluso il nuovo materiale.

URI

La maggior parte dei programmatori di creare un oggetto URI prima di creare il bot ragno vero e proprio. Un'istanza di un oggetto URI utilizzando la pagina web che si desidera eseguire la scansione con il tuo bot ragno come argomento:

Uri uri = new Uri ( "http; // www.SampleSite.com/");

L'oggetto URI rappresenta la pagina Web il bot ragno finirà per strisciare. Qui, l'URI oggetto punti al sito Web "SampleSite". Una volta creato un URI o un elenco di URI, si è pronti per iniziare a costruire il bot stesso.

HttpWebRequest

Un'istanza di un HttpWebRequest utilizzando l'URI per creare il nucleo del bot:

WebRequest sampleWebRequest = HttpWebRequest.Create (uri);

Il WebRequest si trova al centro del bot ragno. Essa chiede in sostanza le pagine Web più o meno allo stesso modo di un browser web come Internet Explorer o Firefox. Tuttavia, invece di caricare il contenuto della pagina per la visualizzazione, la WebRequest contiene semplicemente i file che contengono la pagina Web nella memoria. Quasi ogni quadro Web contiene un equivalente di oggetto HttpWebRequest di .NET.

HttpWebResponse

Metti il ​​tuo bot a lavorare utilizzando il WebRequest e il suo metodo GetResponse per richiedere la pagina web e posizionarlo in un oggetto HttpWebResponse:

HttpWebResponse SampleHttpWebResponse = (HttpWebResponse) http.GetResponse ();

Il codice di cui sopra scarica la pagina www.SampleSite.com da Internet e lo colloca nella memoria locale. È quindi possibile trasformare i dati in un oggetto HttpWebResponse, che permette di manipolare i dati.

ruscello

Se si desidera rendere la pagina web leggibile per un essere umano come te, è necessario trasformarla in ASCII e assegnarlo a una variabile di tipo di dati String. Leggi l'HttpWebResponse utilizzando un StreamReader e codificarlo in ASCII. Chiudere il HttpWebResponse:

StreamReader sampleStreamReader = new StreamReader (
SampleHttpWebResponse.GetResponseStream (),
System.Text.Encoding.ASCII);
risultato String = sampleStreamReader.ReadToEnd ();
SampleHttpWebResponse.Close ();
sampleStreamReader.Close ();

Da questo passaggio, è possibile salvare i dati della pagina Web a un database, caricarlo su un server o visualizzarlo. Le possibilità sono quasi infinite.