Eri tapoja hakea tuulivoiman tehoarvo

MM-palstalla ei ketju saavuttanut mielenkiintoa, niin jatketaan täällä.

Pythonilla:

python3 -c "import requests; print('Tuulivoimaa',int(requests.get('https://www.fingrid.fi/api/graph/power-system-state?language=fi').json()['WindPower']),'MW')"

Bashilla jq:n avulla:

echo Tuulivoimaa $(curl -sN https://www.fingrid.fi/api/graph/power-system-state?language=fi | jq -r '.WindPower' f.json) MW

Bashilla ilman jq:ta:

echo Tuulivoimaa $(wget -qO- https://www.fingrid.fi/api/graph/power-system-state?language=fi | grep "WindPower" | cut -d: -f2 | cut -d. -f1) MW

Muita tapoja noitaa arvo saa esittää myös.
142171
Äänestä

Muut lukivat myös

Vastaukset 14

Vanhimmat

Tai tämän olisi voinut laittaa oikeastaan Linux-palstalle. Tosin saahan bashin nykyään myös Windowsille, ja Macissakin voi käyttää unix-tyylisiä shellejä.

Äänestä

#include <iostream>

int main() {
std::cout << "Consumption : 10439.0\n";
}

Äänestä

Hyvä ketju, opiksi minullekin.

Turbo Urpo

Äänestä

ja taas kerran curl !

tuo curl on oudon suosittu... mutta silti onneton viritelmä!

PAITSI, jos jostain saisi ohjeet, miten saan käännettyä curlin 32-bit DLL:ksi windowsiin. Ja nimenomaan sellaiseksi DLL:ksi, että jos toimin näin:

1. tuota CURL.DLL edellisen mukaisesti.
2. formatoi kiintolevy
3. asenna windows 10
4. asenna (tai tee itse TOISELLA KONEELLA jokin ohjelma ja kopioi kohdekoneelle), joka tarvitsee CURL.DLL
5. kopioi ohjelma.exe:n kanssa samaan hakemistoon CURL.DLL /tehtiin kohdassa 1)

niin nyt ohjelman pitää toimia !

Eli CURL.DLL ei saa vaatia minkään muun DLL:n olemassaoloa koneella paitsi niiden DLL:ien, jotka asentuvat, kun asennetaan windows10.

Eli saa vaatia esim:

advapi32.dll
kernel32.dll
user32.dll
gdi32.dll

mutta eipä juuri muuta.

Eli jos tarvitsee OpenSSL:ää avukseen, niin se OpenSSL pitää olla staattisesti CURL.DLL:n osa ! Eli ei saa vaatia erikseen esim. libeay.dll ja/tai lbssl.dll.

Täällä pyörii monta "osaajaa" muttei ilmeisesti oikeita osaajia.

Tai jos joku oikeasti osaa, laitapa ohjeet, miten tuotan sellaisen CURL.DLL:n joka ei apu-dlliä kaipaa, vaan tulee toimeen niillä mitkä asentuvat windows10:n mukana !

Eli siis tuollainen CURL.DLL olisi hieno, mitä voin käyttää itse tekemäni ohjelman osana !

Äänestä

  • Anonyymi kirjoitti:

    Miksi pitäisi tehdä tuollaista pelleilyä?

    Oikea osaaja sanoo, että Windows 10:sä on Fetch API tuota varten: https://developer.mozilla.org/en-US/docs/Web/API/Request

    Ei tarvitse pelleillä minkään dll:n kanssa, eikä formatoida eikä Pythonia.

    "Ei tarvitse pelleillä minkään dll:n kanssa, eikä formatoida "

    Se formatointi ei ole tietenkään itsetarkoitus, vaan sen tarkoituksena oli vain varmistaa, ettei koneella ole mitään sellaisia DLL:iä, jotka eivät asennu automaattisesti windowsin asennuksen yhteydessä.

    Äänestä

  • Anonyymi kirjoitti:

    Miksi pitäisi tehdä tuollaista pelleilyä?

    Oikea osaaja sanoo, että Windows 10:sä on Fetch API tuota varten: https://developer.mozilla.org/en-US/docs/Web/API/Request

    Ei tarvitse pelleillä minkään dll:n kanssa, eikä formatoida eikä Pythonia.

    "Oikea osaaja sanoo, että Windows 10:sä on Fetch API tuota varten: https://developer.mozilla.org/en-US/docs/Web/API/Request"

    Hah HAa !!!

    Luulet olevasi "Oikea osaaja".

    JavaScript (tai mikää viritys, minkä osana käytetään JavaScriptiä) ei ole oikeaa osaamista.

    Jos teet asian jonkin JavaScript -virityksen avulla (kute WebDriver Selenium), niin arvaapa mitä tapahtuu seuraavaksi:

    fingrid muuttaa web -sivuaan siten, että se tarkistaa, onko jokin WebDriver Seleniumiin liittyvä JavaScript -funktio ladattu, ja JOS on, niin sivun toiminta tahallisesti estetään, jolloin et saa haluamaasi tietoa ladattua.

    Tuo on tänäpäivänä hallitsevassa asemassa olevien (suur)yritysten tapa toimia.

    Todennäköisesti Fingrid Oy:n kanta asiaa on se, että jos haluat jollain automaattisella ohjelmalla saada haluamasi tuulivoiman tehoarvon, sinun tulee maksaa käyttöoikeudesta Fingridille, ja jos yrität kiertää maksua jollain JavaScript -virityksellä (jollainen esim. WebDriver Selenium on), niin fingrid vain muuttaa web -sivuaan siten, että havaittaessa JavaScript -koodia, joka on osa WebDriver Seleniumia, niin sivun toiminta estetään siten, ettet saa haluamaasi tietoa.

    Juuri siksi oikea osaaja käyttää ihan muita välineitä kuin JavaScript.

    Äänestä


  • Anonyymi00008 kirjoitti:

    "Oikea osaaja sanoo, että Windows 10:sä on Fetch API tuota varten: https://developer.mozilla.org/en-US/docs/Web/API/Request"

    Hah HAa !!!

    Luulet olevasi "Oikea osaaja".

    JavaScript (tai mikää viritys, minkä osana käytetään JavaScriptiä) ei ole oikeaa osaamista.

    Jos teet asian jonkin JavaScript -virityksen avulla (kute WebDriver Selenium), niin arvaapa mitä tapahtuu seuraavaksi:

    fingrid muuttaa web -sivuaan siten, että se tarkistaa, onko jokin WebDriver Seleniumiin liittyvä JavaScript -funktio ladattu, ja JOS on, niin sivun toiminta tahallisesti estetään, jolloin et saa haluamaasi tietoa ladattua.

    Tuo on tänäpäivänä hallitsevassa asemassa olevien (suur)yritysten tapa toimia.

    Todennäköisesti Fingrid Oy:n kanta asiaa on se, että jos haluat jollain automaattisella ohjelmalla saada haluamasi tuulivoiman tehoarvon, sinun tulee maksaa käyttöoikeudesta Fingridille, ja jos yrität kiertää maksua jollain JavaScript -virityksellä (jollainen esim. WebDriver Selenium on), niin fingrid vain muuttaa web -sivuaan siten, että havaittaessa JavaScript -koodia, joka on osa WebDriver Seleniumia, niin sivun toiminta estetään siten, ettet saa haluamaasi tietoa.

    Juuri siksi oikea osaaja käyttää ihan muita välineitä kuin JavaScript.

    "JavaScript (tai mikää viritys, minkä osana käytetään JavaScriptiä) ei ole oikeaa osaamista."

    Tee vaikka Typescriptillä tai C#:lla tai millä huvittaa. Tuo on selkeä API kutsu millä asian saa tehtyä. En minä ainakaan Javascriptiä käytä kun se ei ole tyypitetty.

    "fingrid muuttaa web -sivuaan siten, että se tarkistaa, onko jokin WebDriver Seleniumiin liittyvä JavaScript -funktio ladattu, ja JOS on, niin sivun toiminta tahallisesti estetään, jolloin et saa haluamaasi tietoa ladattua."

    Estäminen perustuu siihen että tunnistetaan, ja tehdään esto. Sen voi tehdä IP-osoitteen, toistuvien yhteysyritysten, laittamalla sivulle jotain JS koukkuja, jemmaamalla sivulle vaikka javascriptiä joka pitää ajaa että sisältö on ladattavissa, voi laittaa myös seurannan vaikka seurantapikselillä... Ei curl ratkaise mitään jos halutaan estää.

    Helpointa on tietenkin tehdä niin että tekee kyselyt siihen rajapintaan mitä saa käyttää ja niin monta kyselyä vuorokaudessa kuin on lupa.

    Silloin et tietenkään tee kyselyjä suoraan käyttöliittymään ja laita miljoonaa ihmistä käyttämään kyseistä käyttöliittymää koska se kuormittaisi Fingridin rajapintaa. Voit hakea sillä Fetch API:lla, curlilla tms. tiedon palvelimelle johon teet oman rajapinnan, mistä miljoona ihmistä voi sitten lukea sen sovellukseen vaikka sillä Fetch API:lla.

    Huomaa että asia ei liity millään tavalla Windows 10:n. Windows 10 ei ole palvelimeen tarkoitettu.

    Äänestä


LOISTAVAA; S24:sen helmiä tämä avaus. Nämä juuri on se syy miksi minäkin näitä sivuja selailen.

Äänestä
  • Tarkennetaanpas, sillä vain avaus on asiatuntevan laatima, muut tässä ketjussa on roskaa.

    Äänestä

  • Katsoppas, eipä ole Googlen tuttu tämä "Lynx-selain", yritin pikaista visiittiä sivulle ohjeita lukeakseni. Niinpä päätin jakaa tiedon sijainnista tässä;

    https://lynx.invisible-island.net/lynx_help/Lynx_users_guide.html

    Tämä on kuitenkin sen verran pätevä sisällön noutamiseen, ettei sovi veteraania unohtaa.

    Äänestä

Ketjusta on poistettu 3 sääntöjenvastaista viestiä.

Kommentoi aloitusta


Anonyymi kirjoitti:

MM-palstalla ei ketju saavuttanut mielenkiintoa, niin jatketaan täällä.

Pythonilla:

python3 -c "import requests; print('Tuulivoimaa',int(requests.get('https://www.fingrid.fi/api/graph/power-system-state?language=fi').json()['WindPower']),'MW')"

Bashilla jq:n avulla:

echo Tuulivoimaa $(curl -sN https://www.fingrid.fi/api/graph/power-system-state?language=fi | jq -r '.WindPower' f.json) MW

Bashilla ilman jq:ta:

echo Tuulivoimaa $(wget -qO- https://www.fingrid.fi/api/graph/power-system-state?language=fi | grep "WindPower" | cut -d: -f2 | cut -d. -f1) MW

Muita tapoja noitaa arvo saa esittää myös.

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu