|
| HOMEPAGE | INDICE FORUM | REGOLAMENTO | ::. | NEI PREFERITI | .:: | RSS Forum | RSS News | NEWS web | NEWS software | |
| PUBBLICITA' | | | ARTICOLI | WIN XP | VISTA | WIN 7 | REGISTRI | SOFTWARE | MANUALI | RECENSIONI | LINUX | HUMOR | HARDWARE | DOWNLOAD | | | CERCA nel FORUM » | |
06-06-2017, 19.44.41 | #1 |
Newbie
Registrato: 23-12-2015
Messaggi: 43
|
Estrapolare i Dati di una Pagina Web Per le Previsioni del Tempo
e il mio problema e questo : Io Vorrei sapere sè fosse possibile sruttando un foglio di excel estrappolare i dati principali di una Pagina Web per creare una Pseudo previsioni del tempo . Mi spiego meglio : Su di un foglio di Excel nella cella (H1) inserisco la località ; Dopo di che premendo un tasto vorrei che il tutto mi comparisse come in Figura : Io di Mio ho provato a creare una funzione che per certi versi avevo già creato anni fa con il Vb6.0 e riadattato in vba, che e questo : Codice:
Sub GetCourseList() Dim URL As String Dim qt As QueryTable Dim ws As Worksheet Set ws = Application.Worksheets.Add '1° ) Soluzione URL = "https://www.ilmeteo.net/meteo_Torino-Europa-Italia-Torino--1-31584.html" '2° ) Soluzione 'URL = "http://www.meteo.it/meteo/san-giusto-canavese-1246" '3° ) Soluzione 'URL = "https://www.3bmeteo.com/meteo/torino" Set qt = ws.QueryTables.Add( _ Connection:="URL;" & URL, _ Destination:=Range("A1")) With qt .RefreshOnFileOpen = True .Name = "Torino" .FieldNames = True .WebSelectionType = xlAllTables .Refresh BackgroundQuery:=False Foglio2.Range("A1").QueryTable.Refresh BackgroundQuery:=False End With End Sub Però esula di gran lunga da quello che io vorrei realizzare . 1° ) In quanto : non solo mi estrappola completamente l'intera pagina Web 2° ) Mi prende l'intero Foglio di Excel e capirci un qualche cosa diventa difficile. 3° ) Non ha nulla a che fare con la località desiderata. Ahora ho provato a modificare il Listato offertomi da Alexsandra inerente alla lettura dell'oroscopo. Anche qui non si vede molto , ma comunque sia per lo meno mi prende in considerazione il nome della località. Per qui la mia domanda e questa c'è un modo per Ottenere tutto quello che si vede sulla Pagina Link inserita nel Progetto , ho in alternativa adattare il Foglio di excel al Link Stesso Grazie sin da Ora per tutto l'aiuto che vorete darmi in merito sinceri Saluti da A.Maurizio. (p.S) Inserisco lik Per Scaricare il File di prova : https://app.box.com/s/gcluqs5u8xcw6tk16nbrpbmf45ovfd24 |
08-06-2017, 01.15.38 | #2 | |
Senior Member
WT Expert
Registrato: 19-05-2007
Loc.: Verona
Messaggi: 1.302
|
Rif: Estrapolare i Dati di una Pagina Web Per le Previsioni del Tempo
Quota:
Se fai un cerca su Google li trovi tutti. e puoi utilizzare quelli per importare lo "spezzone" di tabella che contiene i dati cercati. Una scorciatoia potrebbe essere di importare TUTTA la pagina web in un foglio di appoggio e finita l'importazione vai a vedere nel foglio dove sono collocate le informazioni che ti interessano (riga, colonna). Poi nella macro che importi la pagina web, aggiungi il codice necessario per copiare le righe che ti interessano del foglio di appoggio e copiarle nel foglio che dovrà mostrare i dati della località scelta.
___________________________________
- Il primo fondamento della sicurezza non e' la tecnologia, ma l'attitudine mentale - |
|
08-06-2017, 12.30.37 | #3 |
Newbie
Registrato: 23-12-2015
Messaggi: 43
|
Rif: Estrapolare i Dati di una Pagina Web Per le Previsioni del Tempo
Ciao Carissimo/ma Alexsandra : Deto cosi sembrebbe Facile; Però tieni presente che io non so te.
Con le tue Innumerevoli capacità, con le mie basi di anni di programmazione si; ma anche di innumerevoli cambiamenti tra linguaggi vari. In più non è che sia una cima con il VBA, perqui capisci già da te come sono messo. Però se a te potesse esserti di Aiuto sempre per il mio problema , io l'altro giorno ho provato a ragionare come mi hai appena detto tu e ho Buttato giù questo codice che dovrebbe funzionare in quanto la logica dovrebbe essere esatta. Però non riesco a farlo girare in quanto mi da sempre errore e trattandosi sempre del VBA, non potresti darmi un occhiata tu e curare i miei punti più importanti; Mi sarebbe molto di aiuto vedere come gira. Ti invio il Programma di prova. Grazie infinite per la tua proverbiale pazienza, Sinceri Saluti da A.Maurizio (P.S) Link Per Scaricare il Tutto : https://app.box.com/s/btygs0id4sn8244y01lzet3hkccb5coi |
08-06-2017, 20.32.24 | #4 |
Gold Member
WT Expert
Registrato: 09-01-2002
Loc.: None of your business
Messaggi: 5.505
|
Rif: Estrapolare i Dati di una Pagina Web Per le Previsioni del Tempo
Tutti quei siti, a monte hanno un database costituito da tabelle e nomi dei campi. Sulla base di un recordset restituito lato server, sempre dallo stesso lato, producono il codice html di ritorno al tuo browser che lo interpreta e visualizza la pagina.
Cio che avviene lato server, tu non lo sai o, per meglio dire, non è così utile per coloro i quali si limitano ad utilizzare un servizio attraverso il proprio browser. Con opportune conoscenze d'utilizzo di utilities di vario genere, è possibile interrogare il server per ottenere i dati direttamente da quelle tabelle e da quei campi, sempre che il server sia configurato in maniera tale da restituirle secondo una differente logica operazionale. Cio significa mettere alla prova il server con richieste di accesso "fuori dall' ordinario" ed è un'attività che è ben vista da nessuno. Credo tu abbia capito cosa intendo, quindi ti suggerisco un metodo alternativo e senza rischi: http://api.ilmeteo.net/ Una volta ottenuto il file xml, puoi utilizzare quello come base dati per il tuo foglio excel. Se una pagina internet contiene un tabella, allora anche Excel può leggere quella tabella, visto che è esso stesso una tabella. Così funzionava il foglio degli oroscopi, ma non tutte le pagine web sono così semplici
___________________________________
Practice feeds Skill,Skill limits Failure,Failure enhances Security,Security needs Practice |
09-06-2017, 14.50.19 | #5 |
Newbie
Registrato: 23-12-2015
Messaggi: 43
|
Rif: Estrapolare i Dati di una Pagina Web Per le Previsioni del Tempo
Ciao LoryOne Grazie del tuo Supporto Tecnico il tutto sara molto bello , ma a dire il vero pur avendo fatto per filo e per segno tutto ciò che mi hai scritto anche usando il sito da te allegato come link.
Non saprei come usarlo , ne tanto meno come metterlo in funzione senza una base Pratica concreta anche solo per vedere nel Concreto come dovrei impostare il tutto . Ma non importa va bene cosi . Scusami per il Disturbo sinceri saluti da A.Maurizio |
10-06-2017, 20.40.49 | #6 |
Newbie
Registrato: 23-12-2015
Messaggi: 43
|
Rif: Estrapolare i Dati di una Pagina Web Per le Previsioni del Tempo
Ciao LoryOne ascolta so da me che a volte sono un rompini, però ci tengo molto alla riuscita di questo progetto.
Per qui volevo chiederti Per Favore non ti sarebbe possibile solo aiutarmi in questi tre passaggi. Dinque : 1° ) Fare in modo che preso per buono la località che inserisco nella cella (H1) nel nostro esempio e (Torino) Da mio programma , dovrebbe collegarsi al sito ma senza aprirlo; Cercare la località ; e prelevare il primo codice che servirà per visualizzare la prima immagine sul foglio che andrà a riportare nella cella (B7) Ahora di mio ho provato a collegarmi al sito e poi ho fatto un click con il destro del mouse sulla prima immagine che ho trovato e come riferimento mi da questo : Codice:
<svg class="cook_svg c3" version="1.1" xmlns="http://www.w3.org/2000/svg" width="100%" height="200px"><use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#s3"></use></svg> Detto questo tutto ciò sarebbe facile per le persone che masticano queste cose ; Mentre io che sono a digiuno da tutto ciò non saprei neppure come indirizzare il tutto. Tu Potresti darmi una mano in merito anche solo in questo tre passaggi , poi al resto sarei forse in grado di proseguire da solo Grazie Grazie Grazie . Sinceri saluti Da A.Maurizio Buon Fine Settimana a te e Famiglia (P.S) Link per Scaricare il Mio Progetto di prova : https://app.box.com/s/eoojl1slv5lrl3ww02e9b737i0b04zs2 |
11-06-2017, 09.47.39 | #7 |
Senior Member
Registrato: 21-11-2010
Messaggi: 282
|
Rif: Estrapolare i Dati di una Pagina Web Per le Previsioni del Tempo
Non devi utilizzare il sito ma le API.
Usa il link che ti ha suggerito LoryOne: http://api.ilmeteo.net/ e registrati. A questo punto puoi accedere alla libreria xml delle previsioni metereologiche: http://api.ilmeteo.net/index.php?p=h seleziona la località desiderata ed ottieni gli url dei file xml con le previsioni per la località scelta. Ora dovrai importare i dati dal file xml in excel. Non avendo conoscenze specifiche ti suggerisco questo link: https://support.office.com/it-it/art..._xml_data_file |
11-06-2017, 13.39.33 | #8 |
Newbie
Registrato: 23-12-2015
Messaggi: 43
|
Rif: Estrapolare i Dati di una Pagina Web Per le Previsioni del Tempo
Ciao zallan ascolta forza di fare visto che è quasi tutta la notte che non dormo; Forse sono riuscito a risolvere il mio problema da solo.
L'unica cosa che mi resterebbe ancora da fare ; ma senza il vostro aiuto non saprei come fare sarebbe ancora questa. 1° ) Dato che la cella H1 del mio Foglio di lavoro contiene la località desiderata e dato che io posso usare questo Link della Pagina Web in Questione che a sua volta servirebbe proprio per inserire la località voluta. Come posso far si che quando ricavo in VBA la mia località prelevata appunto dalla cella (H1) esso possa trascrivere tale località nell'apposita Sede della Pagina Web faccia la sua ricerca e a questo punto mi dia i dati ricavati . Porto un esempio più o meno pratico : Dunque, se il volessi semplicemente trasferire il dato che ricevo dalla Cella (H1) per metterlo in bella vista nella cella (C3) . Non dovrei fare altro che scrivere in VBA Codice:
DiPrivate Sub CommandButton1_Click() Dim X As String X = Foglio1.Range("H1").Value & "" Foglio1.Range("C3").Value = X End Sub Però Trattandosi di questo link : Codice:
https://cdn.worldweatheronline.net/staticv6/styles/main.2.2.min.css" Tenendo presente che : per certi versi ho risolto il tutto sfruttando i Link della pagina in Questione per i vari oggetti per qui le ho risolti cosi : Codice:
Sub GetShapeFromWeb(strShpUrl As String, rngTarget As Range, X As String) Dim shp As Shape With rngTarget With .Parent .Pictures.Insert strShpUrl Set shp = .Shapes(.Shapes.Count) End With shp.Left = .Left shp.Top = .Top End With Set shp = Nothing End Sub Sub Indirizzo_Internet() X = Foglio1.Range("H1").Value & "" Call GetShapeFromWeb("https://cdn.worldweatheronline.net/staticv6/styles/main.2.2.min.css" & X) End Sub Sub Test1() Call GetShapeFromWeb("https://cdn.worldweatheronline.net/images/weather/small/113_day_sm.png", Foglio1.Range("B7")) Call Test2 End Sub Sub Test2() Call GetShapeFromWeb("https://cdn.worldweatheronline.net/images/weather/small/113_day_sm.png", Foglio1.Range("C7")) Call Test3 End Sub Sub Test3() Call GetShapeFromWeb("https://cdn.worldweatheronline.net/images/weather/small/113_day_sm.png", Foglio1.Range("D7")) End Sub Quello chè però avevo pensato di fare in un primo momento e la Questione della prima (Sub Indirizzi_Internet) ma non funziona in quanto mi da errore e non capisco il perchè. E nè tanto meno come risolvere il tutto . Per qui detto tutto ciò tu avresti una vaga idea di come rendere il tutto non solo più veloce ma anche più consono a ciò che vorrei fare io . Grazie per tutti i suggerimenti che vorrai darmi in merito sinceri Saluti e Buona Domenica da A.Maurizio (P.S) Ti Allego anche il nuovo File |
11-06-2017, 13.43.53 | #9 |
Newbie
Registrato: 23-12-2015
Messaggi: 43
|
Rif: Estrapolare i Dati di una Pagina Web Per le Previsioni del Tempo
Dimenti cavo anche di dirti che il Sito in questione e questo :
https://www.worldweatheronline.com/ Grazie ancora per il tuo straordinario Impegno Saluti da A.Maurizio |
11-06-2017, 21.09.17 | #10 | |
Senior Member
WT Expert
Registrato: 19-05-2007
Loc.: Verona
Messaggi: 1.302
|
Rif: Estrapolare i Dati di una Pagina Web Per le Previsioni del Tempo
Quota:
Perchè non segui il consiglio di registrarti e scaricare le api da quel sito. a mio avviso è l'unica soluzione
___________________________________
- Il primo fondamento della sicurezza non e' la tecnologia, ma l'attitudine mentale - |
|
12-06-2017, 13.34.41 | #11 |
Newbie
Registrato: 23-12-2015
Messaggi: 43
|
Rif: Estrapolare i Dati di una Pagina Web Per le Previsioni del Tempo
Ciao Alexsandra Hai pienamente Ragione , e non mi stupirei se arrivati a questo punto tu ho altri membri del forum mi arrabbiaste con me.
Stà di fatto che se io dovessidire a te fai questo o quella cosa sfruttando le Api di Windows . Sicuramnete tu lo faresti in quanto e alla tua porta e sai come si fa. Io da parte mia come vedi l'impegno c'è lo metto , ma le api di vindows non le uso più da moltissimi anni. Per qui non saprei neppure come incominciare nel voler buttare giù anche solo due riche per poi vederne i risultati. Ti basti pensare che qualche mese fa mi ero messo a fare un programmino sempre sfruttando il VBA che da un numero Telefonico ho da un indireizzo E_mail prelevato da un Database , volendo partiva la corrispondente (Telefonata) o (E_mail) Bene tutto ciò anche il quel caso ho sfruttato le Api di Windows cper creare il tutto ; Non nego che e diventato molto carino da usare , a da vedersi. Però per fare ciò : Non nego di averci impiegato più di 15 giorni per mettere in sieme i pezzi. Ecco perchè stò cercando nuove strade o alterntive che siano. Non ti nego che ho anche osservato un video preso da Youtube sempre inerente alle previsioni del tempo : Bene !!!!! alla fine di tutto a lui funzionava tutto e il mio non faceva altro che continuare a darmi errore a destra e a sinistra; ed e questo che a me fà più rabbia. Comunque grazie delle tue belle parole e della vostra pazienza che avete avuto nei miei confronti per tutto questo tempo . Ma ci Rinuncio se davanti a me non trovo almeno una Base Concreta con qui Partire . Grazie Grazie Grazie a Tutti voi Sinceri Saluti da A.Maurizio |
12-06-2017, 17.54.14 | #12 |
Newbie
Registrato: 23-12-2015
Messaggi: 43
|
Rif: Estrapolare i Dati di una Pagina Web Per le Previsioni del Tempo
Ciao zallan e Alexsandra a forza di leggere atentamento il Suggerimento di "zallan" forse sono riuscito a fare qualcosa di Interessante .
L'unico Problema e Questo : 1 ) quando Apro il Documento XML appena creato mi Appare in quaesto modo , Vedi Foto 1 e Foto 2: [IMG][/IMG] [IMG][/IMG] 2 ) però il Sito lo devo sempre aprire manualmente ! Ora la mia Domanda e questa ! Una volta Impostate tutte le località desiderate , non c'è un sistema per Prelevare solo la località che inserisco in (H1) e premendo un tasto far partire il tutto , senza dover tutte le volte fare un Doppio click sul link da me desiderato . Grazie per tutto l'aiuto che vorrete darmi in merito Saluti da A.Maurizio |
13-06-2017, 15.17.01 | #13 |
Senior Member
Registrato: 21-11-2010
Messaggi: 282
|
Rif: Estrapolare i Dati di una Pagina Web Per le Previsioni del Tempo
Io ho seguito la procedura che ho illustrato nel post precedente e dopo aver effettuato la registrazione, ho fatto il login qui:
http://api.ilmeteo.net/ quindi ho cliccato sul menù: "una località" ho fatto le seguenti selezioni: continente= Europa nazione = Italia provincia=Torino località=Torino ottenendo gli url per i file xml quindi ho copiato il primo url, così descritto: "URL 1: file XML con previsioni meteo fino a 7 giorni e panoramica generale del giorno" poi ho aperto excel, nel menù: "carica dati esterni" ho cliccato su: "da web" ho inserito il link nella barra degli indirizzi della finestra appena aperta poi ho premuto il pulsante:"vai" a questo punto, nella finestra viene visualizzato il contenuto del file xml poi ho cliccato su importa dopo aver confermato con "ok" alle due successive finestre, i dati del file xml risultano inseriti in excel. Allego il file excel ottenuto. |
13-06-2017, 22.40.52 | #14 |
Gold Member
WT Expert
Registrato: 09-01-2002
Loc.: None of your business
Messaggi: 5.505
|
Rif: Estrapolare i Dati di una Pagina Web Per le Previsioni del Tempo
Oroscopo:
Avevi una pagina web che conteneva valori in tabelle direttamente nel file html, pertanto è risultato facile accedere a quel valore desiderato con le apposite istruzioni di VBA Excel. Previsioni del tempo: Le cose sono cambiate...in peggio. Dal codice html della pagina, risulta piuttosto difficile (se non impossibile) adoperare identico metodo, quindi è necessario cambiarlo. Adesso devi spezzare in due il tuo progetto: 1 - Ottenere il file xml dei dati grezzi, sebbene correlati secondo logica. Excel lo importa come tabella, ma il file è leggibile anche con un editor di testo. 2 - Utilizzare tale base dati per l'interfaccia che vuoi creare secondo il layout (aspetto) che hai mostrato. Nei dati grezzi e correlati (xml) le icone sono identificate da codici numerici (che poi vengono tradotti in immagini o icone nella predisposizione della pagina), però tu puoi scaricare le icone che ti servono nel modo che hai già indicato, es: https://cdn.worldweatheronline.net/i...113_day_sm.png, per il cielo sereno. Ricorda che con VBA superi certi limiti imposti: La base dati può essere un foglio2 importato come zallan ti ha suggerito, oppure può rimanere quel file xml così com'è e, con apposita procedura di accesso al file in lettura, ottenere le info che ti servono ogniqualvolta cambi qualcosa nell'interfaccia che debba avere corretta correlazione con la scelta effettuata. In VBA l'accesso al file ASCII in lettura è di una semplicità assurda, così come la lettura di intere righe di testo: Anche la istruzioni legate alla manipolazione delle stringhe sono piuttosto semplici ed intuitive. Hai detto di avere avuto esperienza in differenti linguaggio, quindi adesso per te è solo questione di identificare cosa ti serve del set d'istruzioni al quale fai accesso in VBA.
___________________________________
Practice feeds Skill,Skill limits Failure,Failure enhances Security,Security needs Practice |
16-06-2017, 21.49.10 | #15 |
Senior Member
WT Expert
Registrato: 19-05-2007
Loc.: Verona
Messaggi: 1.302
|
Rif: Estrapolare i Dati di una Pagina Web Per le Previsioni del Tempo
Mi accodo ai consigli di Zallan e LoryOne, rispetto al file dell'oroscopo le cose sono cambiate e si deve cambiare metodo, ma se non hai una conoscenza (anche di base) del linguaggio Html riesci a ricavare ben poco.
La soluzione proposta da zallan (Api) è la più sicura, veloce e affidabile, e anche io ti consiglio di seguire quella strada. In alternativa puoi usare la query di importazione da sito web (procedura guidata dalla barra multifunzione di Excel), ma in ogni caso devi cercare un sito che presenti delle caratteristiche che permettano di usare questo metodo, in sostanza i dati da importare devono essere contenuti in una tabella (Tag Table in Html) per esempio nel sito http://www.meteogiornale.it/previsio...termine/verona i dati sono in una tabella (table) e puoi importarli tranquillamente con la query senza scrivere 1 riga di codice. Questo può essere un aspetto per risolvere il problema, ma in ogni caso comporta di scorrere il codice Html del sito e vedere come è strutturato. (Usando Crome: clik col Dx sulla pagina e nel menu che appare scegli Ispeziona o Visualizza sorgente pagina) Di fronte al sorgente della pagina puoi decidere che strada intraprendere, ora molti siti utilizzano il Tag div accompagnato da una classe, per definire o contenere un insieme di dati per cui non è possibile usare una query da Excel. La soluzione è di cercare il tag div accompagnato dal nome della classe, ma questa procedura Chrome non lo permette, si deve usare IE ........... cut ............... taglio altrimenti viene fuori un articolo da 10 pagine. Morale della favola prova a vedere il file allegato, carica le previsioni con un altro metodo. PS: le immagini sono all'interno di uno script Java, per cui non è possibile importarle dal sito, devi inserirle in un foglio e caricarle in base al tempo che fa nella città che interroghi. PS1: il tempo (Sereno - Nuvoloso etc..) sono definiti in un altro tag (Title) della classe, per cui leggendo il tag e inserendolo in un ciclo If puoi inserire la tua immagine da un altro foglio. Inoltre io ho messo un link diretto per le previsioni di Verona, puoi vedere il codice del file Oroscopo per inserire il nome della città in una cella e concatenare l'url del sito con la città da consultare
___________________________________
- Il primo fondamento della sicurezza non e' la tecnologia, ma l'attitudine mentale - |
Utenti attualmente attivi che stanno leggendo questa discussione: 1 (0 utenti e 1 ospiti) | |
Strumenti discussione | |
|
|
Discussioni simili | ||||
Discussione | Autore discussione | Forum | Risposte | Ultimo messaggio |
HTTrack Website Copier: scaricare solo una pagina web | luca2 | Software applicativo | 5 | 09-10-2015 22.10.49 |
copiare dati da pagina web in excel | fabiovel | Office suite | 5 | 02-01-2008 12.43.17 |
[Vista Backup] Non si trovano i dati salvati | taniservice | Windows 7/Vista/XP/ 2003 | 1 | 25-09-2007 10.29.57 |
Intestazione pagina in Word | lssmsm | Office suite | 0 | 25-03-2005 18.40.36 |
Una Miss Di Sera Bel Tempo Si Spera | Giorgius | Chiacchiere in libertà | 3 | 08-09-2003 13.20.51 |