bergen77 Skrevet 9. desember 2021 Skrevet 9. desember 2021 (endret) Lurer på om det er noen som har kontroll på Nordpool sitt API. Jeg ønsker å laste ned prisene direkte, ikke via Home Assistant eller tilsvarende systemer. Jeg er dermed ute etter HTTP REQUEST informasjonen for å laste ned det jeg trenger. Bruker jeg https://www.nordpoolgroup.com/api/marketdata/page/23?currency=NOK så får jeg alle prisene som jeg trenger. Men jeg skulle gjerne vite hvordan jeg filtrerer slik at jeg kun sitter igjen med området jeg tilhører. Jeg sliter med at min logikk går i stå fordi svaret fra nordpool blir for langt. Håpet er at en filtrert versjon skal kunne fungere. Som dere ser er det allerede spesifisert "currency=NOK" og det fungerer. Men har ikke fått til å spesifisere mer. Jeg forsøker også å lese litt på https://github.com/custom-components/nordpool uten å bli klok på hvordan requestene der sendes. PS! Spørsmålet er ikke om hva Tibber kan og ikke 😉 Endret 9. desember 2021 av bergen77 Siter
stigvi Skrevet 9. desember 2021 Skrevet 9. desember 2021 Tipper nordpool komponenten du har sett på hos github bruker en eller annen nordpool sak hos pypi.org Siter
bergen77 Skrevet 9. desember 2021 Forfatter Skrevet 9. desember 2021 23 minutes ago, stigvi said: Tipper nordpool komponenten du har sett på hos github bruker en eller annen nordpool sak hos pypi.org Den bruker nok akkurat samme adresse om jeg leser koden rett, det refereres til side 23 for norske priser blandt annet. Utfordringen er at det blir så svært, 4700 linjer! Skulle gjerne filtrert bort områdene jeg ikke skal bruke iallefall. Siter
bergen77 Skrevet 9. desember 2021 Forfatter Skrevet 9. desember 2021 Når jeg bruker https://www.nordpoolgroup.com/api/marketdata/page/23?currency=NOK så står det på nederste linje følgende: "},"endDate":null,"currency":"NOK","pageId":23} Om jeg tenker rett betyr det at man kan spesifisere endDate, currency og pageid. Betyr det at ingen andre filtre kan benyttes? Siter
erikolaulvestad Skrevet 9. desember 2021 Skrevet 9. desember 2021 Har ikkje Nordpool restriksjoner på datascraping? Få deg heller api nøkkel her https://m-transparency.entsoe.eu/transmission-domain/r2/dayAheadPrices/show?name=&defaultValue=false&viewType=GRAPH&areaType=BZN&atch=false&dateTime.dateTime=08.11.2021+00:00|CET|DAY&dateTime.timezone=CET_CEST&dateTime.timezone_input=CET+(UTC+1)+/+CEST+(UTC+2)&biddingZone.values=CTY|10YNO-0--------C!BZN|10YNO-1--------2&resolution.values=PT60MSent fra min SM-G991B via Tapatalk 1 Siter
bergen77 Skrevet 10. desember 2021 Forfatter Skrevet 10. desember 2021 Nordpool har ikke restriksjoner på akkurat denne så den kan i utgangspunktet fungere. Men jeg sliter med at systemet mitt ikke takler alle de 4700 linjene i svaret som kommer fra Nordpool. Ser man nederst i svaret kan det se ut som at man ikke kan endre på mere enn dato, valuta og side (land). Entsoe har merkelig oppsett og mangler norsk valuta. Siter
erikolaulvestad Skrevet 10. desember 2021 Skrevet 10. desember 2021 Nordpool har ikke restriksjoner på akkurat denne så den kan i utgangspunktet fungere. Men jeg sliter med at systemet mitt ikke takler alle de 4700 linjene i svaret som kommer fra Nordpool. Ser man nederst i svaret kan det se ut som at man ikke kan endre på mere enn dato, valuta og side (land). Entsoe har merkelig oppsett og mangler norsk valuta. Vel, Nordpool har eksplisitt forbud mot "Automatic extraction". Tilgang til Nordpool api er relativt kostbart. Dette burde sjølvsagt vore gratis for privat bruk.Entso format er XML, det er vel kurant? Valuta er EUR, men mange andre valuta er lista opp i Entso-e codelist, men eg har ikkje sett på om det er mulig å bruke i query parameter. 1 Siter
bergen77 Skrevet 10. desember 2021 Forfatter Skrevet 10. desember 2021 25 minutes ago, erikolaulvestad said: Vel, Nordpool har eksplisitt forbud mot "Automatic extraction". Tilgang til Nordpool api er relativt kostbart. Dette burde sjølvsagt vore gratis for privat bruk. Entso format er XML, det er vel kurant? Valuta er EUR, men mange andre valuta er lista opp i Entso-e codelist, men eg har ikkje sett på om det er mulig å bruke i query parameter. Tror ikke vi skal bruke tid på å diskutere det forbudet. De aller fleste requestene til Nordpool må autentiseres, med noen få unntak. Jeg regner med det er en grunn til at disse sidene er unntatt. Jeg synest det er temmelig idiotisk å tvinge frem disse strømmodellene uten å samtidig legge til rette for at sluttkundene skal kunne automatisere sitt forbruk. Jeg har forsøkt Entso før og det var rotete. Spørsmålet nå var om det var mulig å redusere nordpool sitt svar, men virker som filtrene som kan brukes er oppgitt helt på slutten av responsen. Siter
bergen77 Skrevet 12. desember 2023 Forfatter Skrevet 12. desember 2023 Noen som vet om https://www.nordpoolgroup.com/api/marketdata/page/23? ble endret på tidligere i år? Får endel linebreak (\n) på slutten som forkludrer litt for meg. Siter
eisa01 Skrevet 6. januar Skrevet 6. januar Ville prøvd å sette opp ENTSO-E i stedet for å scrape Det er et python bibliotek som støtter å gi ut Pandas dataframes: https://pypi.org/project/entsoe-py/ Siter
OlavT Skrevet 7. oktober Skrevet 7. oktober Noen andre som har hatt problemer med ENTSO-E i løpet av fredag / helgen / i dag? Siter
stigvi Skrevet 7. oktober Skrevet 7. oktober OlavT skrev (3 timer siden): Noen andre som har hatt problemer med ENTSO-E i løpet av fredag / helgen / i dag? Det kom en ny versjon av integrasjonen til Home Assistant for et par dager siden pga endringer i xml data. Hvordan henter du ned fra entso-e? Siter
OlavT Skrevet 8. oktober Skrevet 8. oktober 14 hours ago, stigvi said: Det kom en ny versjon av integrasjonen til Home Assistant for et par dager siden pga endringer i xml data. Hvordan henter du ned fra entso-e? De hadde oppdatert XML-formatet. Litt irriterende at de endrer slikt uten å innføre versjonering. Siter
hflatoey Skrevet 9. oktober Skrevet 9. oktober Eg kom over denne fiksen til Node-Red 🙂 https://github.com/zinen/node-red-contrib-nordpool-api-plus/issues/29 [{"id":"2765952914cdad1a","type":"function","z":"239899b1c9538b9e","name":"today","func":"msg.url = \"https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?market=DayAhead&deliveryArea=NO5¤cy=NOK&date=\" + \n dateAndTime.format(new Date(), \"YYYY-MM-DD\");\n\nreturn msg;","outputs":1,"timeout":"","noerr":0,"initialize":"","finalize":"","libs":[{"var":"dateAndTime","module":"date-and-time"}],"x":530,"y":1150,"wires":[["cabf2f816c7ba579"]]},{"id":"cabf2f816c7ba579","type":"http request","z":"239899b1c9538b9e","name":"","method":"GET","ret":"obj","paytoqs":"ignore","url":"","tls":"","persist":false,"proxy":"","insecureHTTPParser":false,"authType":"","senderr":false,"headers":[],"x":710,"y":1150,"wires":[["2b5aec917fc92b34"]]},{"id":"8116ad949393a27b","type":"inject","z":"239899b1c9538b9e","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":380,"y":1150,"wires":[["2765952914cdad1a"]]},{"id":"51b305ddabab82db","type":"function","z":"239899b1c9538b9e","name":"tomorrow","func":"let d = new Date();\nd.setDate(d.getDate() + 1)\n\nmsg.url = \"https://dataportal-api.nordpoolgroup.com/api/DayAheadPrices?market=DayAhead&deliveryArea=NO5¤cy=NOK&date=\" + \n dateAndTime.format(d, \"YYYY-MM-DD\");\n\nreturn msg;","outputs":1,"timeout":"","noerr":0,"initialize":"","finalize":"","libs":[{"var":"dateAndTime","module":"date-and-time"}],"x":540,"y":1200,"wires":[["96e3baeb7dcb0c7f"]]},{"id":"96e3baeb7dcb0c7f","type":"http request","z":"239899b1c9538b9e","name":"","method":"GET","ret":"obj","paytoqs":"ignore","url":"","tls":"","persist":false,"proxy":"","insecureHTTPParser":false,"authType":"","senderr":false,"headers":[],"x":710,"y":1200,"wires":[["862b6d93e5d131b1"]]},{"id":"e9e72d5edfe91a01","type":"inject","z":"239899b1c9538b9e","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":380,"y":1200,"wires":[["51b305ddabab82db"]]},{"id":"2b5aec917fc92b34","type":"debug","z":"239899b1c9538b9e","name":"today","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":870,"y":1150,"wires":[]},{"id":"862b6d93e5d131b1","type":"debug","z":"239899b1c9538b9e","name":"tomorrow","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":880,"y":1200,"wires":[]}] Så bruker eg denne til å ta ut pris denne timen [{"id":"78efa3595b1c52e7","type":"function","z":"239899b1c9538b9e","name":"price_now","func":"var entries = msg.payload.multiAreaEntries;\n\n// Get current time in UTC\nvar now = new Date();\n\n// Function to convert UTC date strings to local time Date objects\nfunction utcToLocal(dateStr) {\n var utcDate = new Date(dateStr);\n // Get the UTC time value (milliseconds since epoch)\n var utcTime = utcDate.getTime();\n // Create a new Date object in local time\n return new Date(utcTime + (now.getTimezoneOffset() * 60000));\n}\n\nfor (var i = 0; i < entries.length; i++) {\n var entry = entries[i];\n var deliveryStart = utcToLocal(entry.deliveryStart);\n var deliveryEnd = utcToLocal(entry.deliveryEnd);\n\n if (now >= deliveryStart && now < deliveryEnd) {\n var price = entry.entryPerArea.NO5;\n msg.payload = price;\n return msg;\n }\n}\n\n// If no matching entry is found, return an error message or null\nmsg.payload = \"Price not found for the current hour.\";\nreturn msg;\n","outputs":1,"timeout":0,"noerr":0,"initialize":"","finalize":"","libs":[],"x":580,"y":450,"wires":[["e457769b593e9b52","3074ef57be5821f9"]]}] Siter
Anbefalte innlegg
Bli med i samtalen
Du kan publisere innhold nå og registrere deg senere. Hvis du har en konto, logg inn nå for å poste med kontoen din.