PDA

View Full Version : [C++]Estrarre dati da un sito web.Come?


limpid-sky
15-01-2008, 14:41
Salve,
per un mio programma in c++ volevo estrarre il tasso di cambio euro/dollaro dal sito della bancad'italia e importarlo in una colonna di una matrice.
In sostanza il programma deve leggere la data inserita nella prima colonna e poi crearsi il link alla pagina del sito bancaditalia.
http://www.bancaditalia.it/banca_mercati/cambi/rif
http://www.bancaditalia.it/banca_mercati/cambi/rif/2008/01/cambi_rif_1501.htm
Il primo link è generico mentre il secondo viene creato cliccando sulla data.
Dopo deve copiare il valore scritto vicino a Dollaro USA e metterlo nella seconda colonna di una matrice.
So generarmi la stringa ma non so cosa farci e non so come estrarre dal link generato.
Come posso realizzare una cosa del genere?
è possibile estrarre quel dato da quella pagina?
Se potete indirizzarmi vi ringrazio.

limpid-sky
16-01-2008, 11:15
dai ragazzi come posso fare per ottenere quel valore?

71104
16-01-2008, 11:22
per prelevare l'HTML di una pagina che ti interessa prova a documentarti su questo set di API: http://msdn2.microsoft.com/en-us/library/aa385331(VS.85).aspx

una volta ottenuto l'HTML fai un po' tu.

71104
16-01-2008, 11:24
ecco un link un po' più specifico: http://msdn2.microsoft.com/en-us/library/aa384322(VS.85).aspx

limpid-sky
16-01-2008, 11:36
innanzitutto grazie per aver risposto.
qualcosa da usare in devc++ esiste?
chessò qualche libreria semplificata.
basterebbe importare il sorgente del file html e poi me la vedo io a ricercare il valore.

71104
16-01-2008, 12:58
innanzitutto grazie per aver risposto.
qualcosa da usare in devc++ esiste?
chessò qualche libreria semplificata.
basterebbe importare il sorgente del file html e poi me la vedo io a ricercare il valore.
quelle funzioni si usano tranquillamente anche in Dev-C++. basta che includi l'header windows.h più gli headers indicati in fondo alla pagina di documentazione di ciascuna funzione, come wininet.h. potrebbe anche essere necessario linkare qualche file .lib aggiuntivo, come wininet.lib (che non so se è linkato di default), che comunque nella documentazione viene sempre indicato in fondo con gli altri requisiti.
se hai qualche problema (per esempio se non ti viene trovata qualche funzione di quelle più recenti) allora devi aggiornare il MinGW: il Dev-C++ ormai è bello vecchio, penso che assieme a quello diano una versione antidiluviana del MinGW. anzi a dirla tutta ti consiglio proprio di usare un altro IDE, come ad esempio Code::Blocks (http://www.codeblocks.org/); cambiare IDE non dovrebbe essere un problema visto che comunque continuerai ad usare lo stesso compilatore.

$te
16-01-2008, 13:24
se ti scarichi wget.exe, puoi scaricare una pagina html semplicemnte cosi:

system("wget -F -c -w 1 -r -L -k -l 6 http://www.infoch.altervista.org/Infoch_4.0/guide/Programmazione/SQL/" );

limpid-sky
16-01-2008, 16:16
se ti scarichi wget.exe, puoi scaricare una pagina html semplicemnte cosi:

system("wget -F -c -w 1 -r -L -k -l 6 http://www.infoch.altervista.org/Infoch_4.0/guide/Programmazione/SQL/" );

dove trovo questo programma?

71104
16-01-2008, 17:20
della serie si potrebbe programmare Word a suon di chiamate system e qualche buon hack per nascondere la finestra di console, rendere il processo non terminabile, ecc. ecc. :asd:


























:cry::cry::cry:

limpid-sky
16-01-2008, 17:27
usando le wxwidgets ci ho messo poco a capire.
http://wxforum.shadonet.com/viewtopic.php?p=75473#75473
ora ho la mia bella stringa su cui ricercare.:)

cosa ne pensate delle wxwidgets?

$te
16-01-2008, 18:05
della serie si potrebbe programmare Word a suon di chiamate system e qualche buon hack per nascondere la finestra di console, rendere il processo non terminabile, ecc. ecc. :asd:

:cry::cry::cry:

come?

71104
16-01-2008, 19:21
cosa ne pensate delle wxwidgets? ottime e spesso inutili: se devo programmare cross-platform non uso C++ a meno di vincoli particolari.

limpid-sky
16-01-2008, 22:17
ottime e spesso inutili: se devo programmare cross-platform non uso C++ a meno di vincoli particolari.

però non sono difficili da usare.

tomminno
17-01-2008, 08:47
ottime e spesso inutili: se devo programmare cross-platform non uso C++ a meno di vincoli particolari.

Diciamo che per programmare interfacce grafiche in C++ sotto Windows sono la libreria migliore.