
Kopsavilkums
Excel WEBSERVICE funkcija atgriež datus no tīmekļa pakalpojuma. Funkcija WEBSERVICE ir pieejama tikai operētājsistēmā Windows 2013 un jaunākās versijās.
Mērķis
Iegūstiet datus no tīmekļa pakalpojumaAtgriešanās vērtība
Rezultātā iegūtie datiSintakse
= WEBSERVICE (URL)Argumenti
- url - tīmekļa pakalpojuma URL, uz kuru zvanīt.
Versija
Excel 2013Lietošanas piezīmes
Funkcija WEBSERVICE atgriež datus no tīmeklī mitināta tīmekļa pakalpojuma. Funkcija WEBSERVICE ir pieejama tikai operētājsistēmai Excel 2013 un jaunākās versijās.
Tīmekļa pakalpojums izmanto protokolu, piemēram, HTTP, lai izgūtu datus mašīnlasāmā formātā, piemēram, XML vai JSON. Piemēram, formula, kas izmanto WEBSERVICE, lai izsauktu fiktīvu tīmekļa pakalpojumu, kas mitināts vietnē somewebservice.com, varētu izskatīties šādi:
=WEBSERVICE(“http://somewebservice.com/endpoint?query=xxxx”)
Funkcijas WEBSERVICE rezultāts tiek atgriezts tieši darblapā. Gadījumos, kad tīmekļa pakalpojuma rezultāts ir XML formātā, XML parsēšanai varat izmantot funkciju FILTERXML.
Piemērs
Vienkāršs tīmekļa pakalpojuma piemērs ir RSS, kas tiek izmantots satura sindikācijai XML formātā. RSS ir plaši pieejama un neprasa autentifikāciju, tāpēc tas ir vienkāršs veids, kā pārbaudīt funkciju WEBSERVICE. Iepriekš minētajā piemērā WEBSERVICE tiek izmantots, lai iegūtu NASA jaunākās ziņas. Formula B4 ir:
=WEBSERVICE("https://www.nasa.gov/rss/dyn/breaking_news.rss")
RSS izmanto XML, tāpēc rezultāts ir gara XML virkne, kas satur pēdējo 10 NASA publicēto ziņu nosaukumus kopā ar meta informāciju, piemēram, aprakstu, datumu, URL un tā tālāk. Tālāk redzamajā ekrānā šie dati tiek parādīti teksta redaktorā:
Parsējot rezultātu
Kad WEBSERVICE rezultāts ir XML, datu parsēšanai varat izmantot funkciju FILTERXML. Parādītajā piemērā šādi tiek iegūti katra raksta dati un nosaukums. Formula B7 ekstrakts datumu un apgriež papildu rakstzīmes ar funkciju MID, lai izveidotu Excel draudzīgu datumu:
=MID(FILTERXML(B4,"//item/pubDate"),6,11)
Formula C7 izraksta virsrakstu:
=FILTERXML(B4,"//item/title")
Piezīmes
- Ja WEBSERVICE nevar izgūt datus, tas atgriež vērtību #VALUE! kļūda.
- Ja WEBSERVICE rezultāts pārsniedz 32767 rakstzīmes, tas atgriež vērtību #VALUE! kļūda.