Bouw uw eigen weer-dashboard in deze masterclass voor Google-spreadsheets

Bouw uw eigen weer-dashboard in deze masterclass voor Google-spreadsheets / Wordpress en webontwikkeling

“Computer! Toon me alle huidige weersomstandigheden binnen 300 mijlen van mijn huidige locatie”
“Ja kapitein”
“Toon me nu de luchtvochtigheidsniveaus voor die locaties, in kaart gebracht op lengte- en breedtegraad op een kaart”
“Ja kapitein”

Wilt u van uw Google Drive-account een intelligent weeranalysesysteem maken? Word An Expert Data Analyst 's Nachts Google Spreadsheet gebruiken Rapportageen Word een expert Data-analist' s Nachts Google Spreadsheet-rapporthulpmiddelen gebruiken Wist u dat een van de beste tools van allemaal te voeren is? data-analyse is eigenlijk Google Spreadsheet? De reden hiervoor is niet alleen omdat het bijna alles kan doen wat je zou willen ... Lees meer en leef je deze Star Trek-fantasie? Oké, misschien kunt u Google Spreadsheets niet veranderen in een kunstmatig intelligent computersysteem dat reageert op uw spraakopdrachten, maar in dit artikel laat ik u zien hoe u weergegevens van internet kunt importeren en uw eigen aangepaste dashboard kunt hebben met alle informatie die voor u belangrijk is.

Het uitvoeren van deze taak kan in eerste instantie gecompliceerd klinken als u niet bekend bent met het gebruik van ImportXML of Xpath voor het scrapen van webpagina's, maar ik zal u enkele zeer eenvoudige trucs tonen die u kunt gebruiken om de weersinformatie die u specifiek van de US National wilt halen. Weather Service-website. Als u zich buiten de Verenigde Staten bevindt, moeten dezelfde technieken werken voor uw eigen lokale weerservice. U moet alleen de structuur bepalen van hoe de weersgegevens worden ingedeeld en de query dienovereenkomstig aanpassen.

Dit is vergelijkbaar met de geautomatiseerde spreadsheetrapporten Een geautomatiseerd Google-spreadsheetrapport maken op basis van analysegegevens Hoe een geautomatiseerd Google-spreadsheetrapport maken Van analysegegevens Meer lezen Ik heb dit niet zo lang geleden beschreven, maar in dit geval maakt het gebruik van webgeschraapte gegevens in plaats van Google Analytics-gegevens. Dus, als u uw eigen automatisch bijgewerkte weer dashboard in uw eigen Google Drive-account wilt aanpassen, laten we aan de slag gaan!

Bronweergegevens zoeken

In deze oefening gaat u weersgegevens van de website National Weather Service schrapen door naar specifieke CSS-klassen op de pagina te zoeken die de gewenste gegevens identificeren. Gelukkig organiseerde deze site de weersresultaten met behulp van klassen wanneer u zoekt naar de lokale voorspelling in uw regio.

Het formaat van de HTML waarin we geïnteresseerd zijn in deze zaak is een van beide “overspanningsklasse” of a “p klasse” die de specifieke gegevens identificeert. Hieronder ziet u bijvoorbeeld de klasse “myforecast stroomvoerende lrg” geeft de laatste geregistreerde temperatuur voor de opgevraagde regio aan.

Dus elke keer dat u een query uitvoert op de site, ziet u een URL met de lengte- en breedtegraad van die locatie - bewaar een kopie van die URL, want u zult deze gebruiken om uw dashboard te bouwen. U kunt de HTML-broncode rechtstreeks bekijken of uw browserontwikkelaarshulpmiddelen gebruiken. Voorbeelden van problemen met de website met Chrome-ontwikkelaarstools of Firebug berekenen Websiteproblemen met Chrome-ontwikkelaarstools of Firebug Als u mijn jQuery-zelfstudies tot nu toe hebt gevolgd, kunt u zijn al een aantal codeproblemen tegengekomen en niet bekend hoe ze te repareren. Wanneer je geconfronteerd wordt met een niet-functioneel stuk code, is het erg ... Lees meer om de klassen te vinden die je nodig hebt.

De weersbrongegevens instellen

De manier waarop dit werkt, is dat u een gegevensblad maakt voor elke locatie waarvoor u gegevens wilt verzamelen. Typ de labels voor die gegevens in de linkerkolom en in de volgende kolom moet u de ImportXML-formule invoeren om die gegevens van de website op te halen.

Voor Temperatuur, bijvoorbeeld, werken de volgende werken:

= ImportXml (B12; “// p [@ class = 'myforecast-current-lrg']”)

B12 bevat de URL na het uitvoeren van de locatievraag. Gebruik makend van “// p [@ class =” is hoe u de Xpath-query in te stellen om het te extraheren “p klasse” op de pagina met de opgegeven naam. Deze query retourneert de temperatuur op de pagina.

Vochtigheid, windsnelheid en de rest van de gegevenspunten extraheren die eigenlijk nodig zijn om lijstitems uit een UL-lijst met een klassenaam te extraheren “huidige omstandigheden detail”. De volgende ImportXML-instructie bereikt dit:

= ImportXml (B12; “// ul [@ class = 'lopende omstandigheden detail'] // li”)

Nog een keer, “ul” identificeert het basiselement en vervolgens wordt de klassenaam tussen haakjes weergegeven, zoals weergegeven. Dit wordt gevolgd door de “// li” geeft aan dat u alle lijstitems uit die UL-klasse wilt extraheren.

Hiermee vult u de rest van de gegevensitems in het bronblad voor die locatie in.

U moet in dit geval ook de URL opnemen, omdat de breedtegraad en lengtegraad zijn opgenomen in de URL, en u kunt dat gebruiken om Google Spreadsheet-kaarten te gebruiken om datapunten op een kaart in kaart te brengen (hieronder weergegeven).

Herhaal het bovenstaande proces voor elke locatie waarvoor u weersgegevens wilt ophalen. Voer de query voor die locatie op de website uit, kopieer de URL en maak een nieuw blad voor de locatie en vul het met de benodigde ImportXML-instructies om de gegevens te schrapen die u nodig hebt.

Het hoofdtestblad voor het dashboard bouwen

Nadat u al uw locatiegegevensbladen hebt gemaakt, bent u klaar om het hoofdwerkblad met gegevens voor uw dashboard samen te stellen. Dit is eigenlijk om de gegevens in een tabel op te maken, zodat het gemakkelijker is om zaken in kaart te brengen zoals temps, vochtigheid, windsnelheid, enz.

Maak een kopregel voor alle gegevens en wijs vervolgens elke cel eenvoudig toe aan de locatiegegevensbladlocaties die die gegevens bevatten.

Als u klaar bent, worden alle gegevens die u voor elke locatie van de website hebt geschraapt, in deze tabel opgemaakt voor een eenvoudige beoordeling (en in kaart brengen)..

Er is in sommige gevallen een aantal aanpassingen nodig, omdat de gegevens worden geleverd als tekenreeksen inclusief eenheden. Er zijn een paar trucs om alleen de gegevenswaarden te extraheren. De eerste is om de eindeenheden te strippen met behulp van een spreadsheetformule als deze:

= Mid (C2,1, vinden (“F”,C2) -2)

Dit vindt in principe de locatie van de eenheid en extraheert de werkelijke waarde tot de eenheidstekst begint. Nadat u het nummer alleen hebt geëxtraheerd, moet u het converteren naar een werkelijke waarde in de spreadsheet, zodat u berekeningen kunt uitvoeren of in kaart kunt brengen. Dit doen is eenvoudig met slechts een “waarde” functie zoals hier getoond.

Zodra u al uw waarden heeft gemaakt in het hoofdtashboard, bent u klaar met het instellen van uw gegevens. U kunt nu doorgaan met het maken van de diagrammen en meters die deel uitmaken van uw grafische weersdashboard.

Uw weer dashboard maken

Dit is het eenvoudige gedeelte - breng gewoon de locatie in kaart, samen met de gegevens die u wilt weergeven. Je kunt dingen doen zoals een staafdiagram tonen van alle locaties - in mijn geval kan ik de warmste plek in de staat in één oogopslag zien met behulp van dit soort diagram.

U kunt temp-, vochtigheids- of windsnelheidsmeters maken, die altijd leuk zijn om op een dashboard weer te geven. U kunt de lengtegraad- en breedtegraadgegevens uit de URL extraheren met dezelfde URL “midden” opdracht die ik hierboven heb beschreven, voeg die locaties in de hoofdspreadsheet in (met een komma ertussen) en gebruik die kolom om gegevens op een kaart in kaart te brengen.

Hieronder heb ik de temperatuur in kaart gebracht met behulp van GPS-coördinaten in de kaartgrafiek-widget die beschikbaar is in Google Spreadsheets. Grotere cirkels op de kaart geven locaties aan met de hogere temperaturen.


Zoals je je waarschijnlijk wel kunt voorstellen, kun je een aantal echt cool uitziende dashboards samenstellen die je allerlei informatie over het weer laten zien in je staat, land of regio waar je je gegevens hebt verzameld. U kunt gebruikmaken van een aantal van de vele handige Google Spreadsheet-functies Verbazingwekkende prestaties uitvoeren met deze handige Google Spreadsheet-functies Verbluffende prestaties uitvoeren met deze handige Google Spreadsheet-functies Ik schaam me om toe te geven dat ik pas onlangs besloten heb om te gaan experimenteren met Google Spreadsheets, en wat ik heb ontdekt is dat wat voor aantrekkingskracht of macht Excel ook had over mij vanwege de verbazingwekkende dingen ... Lees meer die beschikbaar zijn om een ​​echt cool uitziend dashboard te ontwikkelen.

Hoewel dit artikel is gericht op het schrapen van gegevens van weerwebsites, is het ook een voorbeeld van hoe u ImportXML kunt gebruiken om informatie van echt te importeren ieder website en het gebruik van Xpath geeft u veel meer flexibiliteit om zeer specifieke informatie te importeren van een webpagina die ImportFeed of ImportHTML niet biedt.

Kun je leuke en creatieve toepassingen bedenken voor ImportXML en Google Spreadsheets? Deel enkele van uw ideeën en misschien kunnen we proberen een van uw projectideeën in een toekomstig artikel te voltooien!