Javascript output van een website > txt format

Pagina: 1
Acties:

Vraag


Acties:
  • 0 Henk 'm!

  • UPPERKEES
  • Registratie: Maart 2007
  • Niet online
Recent heeft mijn gemeente een Google kalender stopgezet met daarin informatie over wanneer en welke afvalbak je aan de weg moest zetten. Was super handig! Nu moet dat via een app en daar zit ik niet om te springen.

Nou heb ik het verleden voor mijn universiteit ook al eens de curl output van mijn roosterwebsite omgezet in een iCal met Python die ik dan kon importeren in mijn kalender (in de 'goede' oude dagen toen je die functionaliteit nog niet automagisch had).

Ik wil nu hetzelfde weer doen, alleen krijg ik bij deze pagina niet de output die ik nodig heb, die wordt 'on the fly' op het scherm geprint met Javascript. Mijn ervaring met web stuff is beperkt, dus daarom de vraag; hoe kan ik de output als tekst op mijn scherm krijgen zodat ik het zelf kan parsen?

Als alternatief kan ik de PDF opslaan en die dan parsen, met pdftotext kom ik al een eind. Maar het zou toch mooier zijn als ik het script kan runnen en die gelijk een iCal of iets dergelijks uitspuugt.

Heeft iemand tips hoe ik die tekst eruit kan squeezen in plain text?

Beste antwoord (via UPPERKEES op 01-03-2017 10:31)


  • DJMaze
  • Registratie: Juni 2002
  • Niet online
Het is een stuk makkelijker. Gewoon de JSON converteren naar iCal :)
https://vpn-wec-api.recyc...stalcode=1321NG&number=20

[ Voor 30% gewijzigd door DJMaze op 01-03-2017 10:12 ]

Maak je niet druk, dat doet de compressor maar

Alle reacties


Acties:
  • Beste antwoord
  • +2 Henk 'm!

  • DJMaze
  • Registratie: Juni 2002
  • Niet online
Het is een stuk makkelijker. Gewoon de JSON converteren naar iCal :)
https://vpn-wec-api.recyc...stalcode=1321NG&number=20

[ Voor 30% gewijzigd door DJMaze op 01-03-2017 10:12 ]

Maak je niet druk, dat doet de compressor maar


Acties:
  • +1 Henk 'm!

  • com2,1ghz
  • Registratie: Oktober 2004
  • Laatst online: 12:18
DJMaze schreef op woensdag 1 maart 2017 @ 10:08:
Het is een stuk makkelijker. Gewoon de JSON converteren naar iCal :)
https://vpn-wec-api.recyc...stalcode=1321NG&number=20
Dit dus.

En als je echt perse HTML wilt hebben dan kan je de gerenderde HTML overnemen van de Inspector van Chrome(of firebug oid)
https://jsfiddle.net/uxpdvwwy/

Acties:
  • 0 Henk 'm!

  • Ryan_
  • Registratie: Februari 2009
  • Laatst online: 13:46
Waarom niet gewoon http://mijnafvalwijzer.nl/ gebruiken? Werkt hier perfect.

Acties:
  • 0 Henk 'm!

  • DJMaze
  • Registratie: Juni 2002
  • Niet online
Ryan_ schreef op woensdag 1 maart 2017 @ 10:13:
mijnafvalwijzer Werkt hier perfect.
Er staat overal "demo" in beeld en werkt niet. Weet je zeker dat je niet werkt voor Addcomm?

[ Voor 6% gewijzigd door DJMaze op 01-03-2017 10:20 ]

Maak je niet druk, dat doet de compressor maar


Acties:
  • 0 Henk 'm!

  • Ryan_
  • Registratie: Februari 2009
  • Laatst online: 13:46
DJMaze schreef op woensdag 1 maart 2017 @ 10:17:
[...]

Er staat overal "demo" in beeld en werkt niet. Weet je zeker dat je niet werkt voor Addcomm?
Nee, ik werk niet voor Addcomm. Waarom een website uit elkaar trekken als het al bestaat en toe gemaild kan worden? Is gewoon gratis.

Acties:
  • 0 Henk 'm!

  • UPPERKEES
  • Registratie: Maart 2007
  • Niet online
DJMaze schreef op woensdag 1 maart 2017 @ 10:08:
Het is een stuk makkelijker. Gewoon de JSON converteren naar iCal :)
https://vpn-wec-api.recyc...stalcode=1321NG&number=20
Geweldig! Ik zie dat je de data-api gebruikte, maar hoe wist je dat je ook /v2/calendars moest gebruiken? En 'number', want ik zie alleen 'housenumber' in de source. 'postalcode' zie ik dan weer wel. Pure magic, mag ik de magie weten? :X

Acties:
  • +1 Henk 'm!

  • DJMaze
  • Registratie: Juni 2002
  • Niet online
Simpel, kijk eens naar alle netwerk requests in de debug console van je browser (op die pagina van jou).

Ik had ff snel een test gemaakt. Ook al is het valide, KDE Kalendar wil hem niet importeren |:(
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php
echo "BEGIN:VCALENDAR
PRODID:recyclemanager
VERSION:2.0
";
$json = json_decode(file_get_contents('https://vpn-wec-api.recyclemanager.nl/v2/calendars?postalcode=1321NG&number=20'));
foreach ($json->data as $month) {
    foreach ($month->occurrences as $event) {
        $stamp = gmdate('Ymd\\THis\\Z');
        $date = new \DateTime($event->from->date);
        echo "BEGIN:VEVENT
DTSTAMP:{$stamp}
UID:{$event->schemaId}
SUMMARY:{$event->title}
DTSTART;VALUE=DATE:{$date->format('Ymd')}
DTEND;VALUE=DATE:{$date->modify('+1 day')->format('Ymd')}
TRANSP:TRANSPARENT
END:VEVENT
";
    }
}
echo "END:VCALENDAR";

[ Voor 67% gewijzigd door DJMaze op 01-03-2017 10:57 ]

Maak je niet druk, dat doet de compressor maar


Acties:
  • +1 Henk 'm!

  • UPPERKEES
  • Registratie: Maart 2007
  • Niet online
DJMaze schreef op woensdag 1 maart 2017 @ 10:44:
[...]

Simpel, kijk eens naar alle netwerk requests in de debug console van je browser (op die pagina van jou).
Cool thanks! Just a side note voor mensen die dit misschien tegenkomen in de toekomst.
In Chrome: F12 --> Klik op de 'console' tab --> Rechtermuisknop in het 'console' field en dan enable: Log XMLHttpRequests --> F5

_/-\o_

Acties:
  • 0 Henk 'm!

  • Barryvdh
  • Registratie: Juni 2003
  • Laatst online: 13:58
DJMaze schreef op woensdag 1 maart 2017 @ 10:17:
[...]

Er staat overal "demo" in beeld en werkt niet. Weet je zeker dat je niet werkt voor Addcomm?
De 'demo' is volgens mij gewoon om een voorbeeld te zien, zonder je gegevens in te vullen. Addcomm levert ook de 'officiele' kalender (iig voor mijn gemeente).

Maar dat heeft in dit geval niet zoveel nut:
Is het mogelijk om de ophaalmomenten naar mijn outlookagenda te exporteren? Nee, dit is niet mogelijk. Wanneer uw gemeente de ophaaldagen aanpast vanwege optimalisatie, wordt dit automatisch verwerkt in de kalender op de website. Omdat de mutaties niet automatisch naar uw outlookagenda kunnen worden geëxporteerd, kan dit voor veel verwarring en miscommunicatie zorgen.
Maar zo te zien werken alle gemeentes met andere websites weer..

[ Voor 4% gewijzigd door Barryvdh op 01-03-2017 11:15 ]

Pagina: 1