Bygg ditt eget vær Dashboard i denne Google Spreadsheet Master Class
“Datamaskin! Vis meg alle aktuelle værforhold innen 300 miles av min nåværende posisjon”
“Ja kaptein”
“Vis meg nå fuktighetsnivåene for disse stedene, kartlagt langs lengdegrad og breddegrad på et kart”
“Ja kaptein”
Vil du slå Google Drive-kontoen din til et intelligent væranalysesystem Bli en ekspertdatabase-analytiker om natten ved hjelp av Google Regneark-rapportverktøy Bli en ekspertdataanalytiker om natten ved hjelp av Google-regnearkrapportverktøy Visste du at et av de største verktøyene for alle å utføre Dataanalyse er faktisk Google Regneark? Årsaken til dette er ikke bare fordi det kan gjøre nesten alt du kanskje vil ... Les mer, og lev ut denne Star Trek-fantasien? Ok, det kan hende du ikke kan slå Google Regneark til et kunstig intelligent datasystem som svarer på dine talekommandoer, men i denne artikkelen vil jeg vise deg hvordan du kan importere værdata fra Internett og ha ditt eget tilpassede dashbord med all informasjon som er viktig for deg.
Å utføre denne oppgaven kan høres komplisert først hvis du ikke er kjent med å bruke ImportXML eller Xpath for å skrape nettsiden, men jeg vil vise deg noen veldig enkle triks du kan bruke til å trekke ut værinformasjonen du vil ha spesielt av US National Værservice nettsted. Hvis du er utenfor USA, må de samme teknikkene fungere for din egen lokale værservice, du må bare bestemme strukturen av hvordan værdataene er lagt ut, og justere spørringen etter.
Dette ligner på de automatiske regnearkrapportene. Slik oppretter du en automatisk Google-regnearkrapport fra Analytics-data. Slik oppretter du en automatisk Google-regnearkrapport fra Analytics-data Les mer Jeg beskrev ikke for lenge siden, men i dette tilfellet bruker det nettskrapede data i stedet for Google Analytics-data. Så, hvis du vil tilpasse ditt eget automatisk oppdaterte værpanel i din egen Google Drive-konto, la oss komme i gang!
Finne kildeværdata
I denne øvelsen skal du skrape værdata fra nettsiden til National Weather Service ved å lete etter bestemte CSS-klasser på innsiden av siden som identifiserer de dataene du vil ha. Heldigvis organiserte dette nettstedet værresultatene ved hjelp av klasser når du søker etter lokalprognosen i ditt område.
Formatet av HTML-en vi er interessert i dette tilfellet er enten a “span klasse” eller a “p klasse” som identifiserer de spesifikke dataene. For eksempel, vist nedenfor kan du se klassen “myforecast-strøm-LRG” identifiserer sist innspilt temperatur for den forespurte regionen.
Så hver gang du kjører en spørring på nettstedet, ser du en nettadresse som viser lengden og bredden på den plasseringen - behold en kopi av denne nettadressen fordi du vil bruke den til å bygge oversikten. Du kan enten se HTML-kildekoden direkte eller bruke verktøylinjene for utviklerverktøy. Utskriftsproblemer med Chrome Developer Tools eller Firebug. Utligne webproblemer med Chrome Developer Tools eller Firebug Hvis du har fulgt mine jQuery-opplæringsprogrammer så langt, kan du har allerede kjørt inn i noen kodeproblemer og ikke kjent hvordan de skal repareres. Når du møter en ikke-funksjonell bit av kode, er det veldig ... Les mer for å finne de klassene du trenger.
Konfigurere værkildedataene
Slik fungerer dette, vil du opprette et dataark for hvert sted du vil samle inn data for. Skriv inn etikettene for dataene i den venstre kolonnen, og i den neste kolonnen må du skrive inn ImportXML-formelen for å trekke inn dataene fra nettsiden.
For Temperatur, for eksempel, fungerer følgende:
= ImportXml (B12; “// p [^ class = 'myforecast-strøm-LRG']”)
B12 inneholder nettadressen etter å ha gjennomført spørringsadressen. Ved hjelp av “// p [^ = klasse” er hvordan du konfigurerer Xpath-spørringen for å trekke ut “p klasse” på siden med det angitte navnet. Denne spørringen returnerer temperaturen på siden.
Ekstra fuktighet, vindhastighet og resten av datapunktene som faktisk kreves, utvider listeposter i en UL-liste med et klassenavn “current-betingelser-detaljer”. Følgende ImportXML-setning oppnår dette:
= ImportXml (B12; “// ul [@ klasse = 'strøm-betingelser-detaljer'] // li”)
En gang til, “ul” identifiserer basiselementet, og deretter er klassenavnet angitt i parentes som vist. Dette følges av “// li” som indikerer at du vil trekke ut alle listeposter i den UL-klassen.
Dette fyller ut resten av datapostene i kildearket for den plasseringen.
Du bør også inkludere nettadressen i dette tilfellet, fordi breddegrad og lengdegrad er inkludert i nettadressen, og du kan bruke det til å bruke Google-regneark for å kartlegge datapunkter på et kart (vist nedenfor).
Gjenta prosessen over for hver plassering du vil trekke værdata for. Kjør spørringen for den plasseringen på nettstedet, kopier URL-adressen og opprett et nytt ark for stedet, og fyll det med de nødvendige ImportXML-setningene for å skrape dataene du trenger.
Bygg hoveddashboard-regnearket
Når du har opprettet alle databladene dine, er du klar til å bygge hovedregnearket for data for oversikten. Dette er i utgangspunktet å lagre dataene i tabellformat, slik at det er enklere å kartlegge ting som temps, fuktighet, vindhastighet osv..
Opprett en headerrad for alle dataene, og så bare kart hver celle til plasseringen av dataarkstedene som inneholder dataene.
Når du er ferdig, vil alle dataene du har skrapt fra nettstedet for hvert sted, bli lagt ut i dette enkeltbordet for enkel gjennomgang (og kartlegging).
Det er noen tilpasning nødvendig i noen tilfeller, fordi dataene kommer inn som strenger, inkludert enheter. Det er noen få triks for å trekke ut bare dataverdiene. Den første er å strippe sluttenhetene ved hjelp av en regnearkformel som denne:
= Midt (C2,1, finne (“F”,C2) -2)
Dette finner i utgangspunktet plasseringen av enheten, og ekstraherer den aktuelle verdien til enhetens tekst starter. Når du først har hentet nummeret, må du konvertere det til en faktisk verdi i regnearket slik at du kan gjøre beregninger eller kartlegge det. Å gjøre dette er enkelt med bare en “verdi” fungere som vist her.
Når du har fått alle verdiene dine opprettet i hoveddashbordet, er du ferdig med å konfigurere dataene dine. Nå kan du gå videre til å lage diagrammer og målere som vil gjøre opp det grafiske værpanelet.
Opprette ditt værpanel
Dette er den enkle delen - bare kart plasseringen sammen med hvilke data du vil vise. Du kan gjøre ting som å vise et strekkdiagram over alle steder - i mitt tilfelle kan jeg se det varmeste stedet i staten på et øyeblikk ved hjelp av denne typen diagram.
Du kan opprette temp, fuktighet eller vindhastighetsmålere, som alltid er morsomme å vise på dashbordet. Du kan trekke lengden og breddegraden data fra nettadressen med det samme “mid” kommandoen jeg beskrevet ovenfor, sett inn disse stedene i hoved regnearket (med et komma mellom dem), og bruk deretter kolonnen for å kartlegge data på et kart.
Nedenfor har jeg kartlagt temperaturer med GPS-koordinater på kartdiagramm widgeten som er tilgjengelig i Google Regneark. Større sirkler på kartet angir steder med høyere temperaturer.
Som du sikkert kan forestille deg, kan du trekke sammen noen virkelig kule utseende dashboards som viser deg all slags informasjon om været, enten i din stat, land eller hvilken region du har samlet dataene dine fra. Du kan gjøre bruk av noen av de mange nyttige Google-regnearkfunksjonene Utfør fantastiske fakta med disse nyttige Google-regnearkfunksjonene Utfør fantastiske fakta med disse nyttige Google-regnearkfunksjonene Jeg skammer meg for å innrømme at jeg nylig har bestemt meg for å begynne å eksperimentere med Google Regneark, og det jeg har oppdaget er at uansett allure eller makt Excel hadde over meg på grunn av de fantastiske tingene ... Les mer som er tilgjengelige for å utvikle en veldig kul utseende dashboard.
Mens denne artikkelen er fokusert på å skrape data fra værnettsteder, er det også et eksempel på hvordan du kan bruke ImportXML til å importere informasjon fra virkelig noen nettside der ute, og bruk av Xpath gir deg mye mer fleksibilitet for å importere svært spesifikk informasjon ut av en nettside som ImportFeed eller ImportHTML bare ikke gir.
Kan du tenke på noen morsomme og kreative bruksområder for ImportXML og Google Regneark? Del noen av dine ideer, og kanskje kan vi prøve å fullføre en av dine prosjektideer i en fremtidig artikkel!