]> pere.pagekite.me Git - homepage.git/blobdiff - blog/index.html
Generated.
[homepage.git] / blog / index.html
index 7fb394908b12866ec03110596116a172593a7fe3..68650b7810329889536d15b44f97bfe52198def2 100644 (file)
 
 
     
+    <div class="entry">
+      <div class="title"><a href="http://people.skolelinux.org/pere/blog/En_enklere_Osloskolehverdag_med_automatisk_sjekk_av_Fronter.html">En enklere Osloskolehverdag med automatisk sjekk av Fronter</a></div>
+      <div class="date">12th February 2015</div>
+      <div class="body"><p>En stund nå har jeg vært nødt til å forholde meg til
+<a href="https://fronter.com/osloskoler/">Fronter</a>, en nettløsning
+Osloskolen bruker for kontakt mellom hjem og skole.  Løsningen
+imponerer ikke, og det er lagt opp til at vi foreldre skal logge inn
+regelmessig for å se om noe har endret seg.  Idéen om å la folk stikke
+innom nettsider for å se om det har skjedd endringer er så idiotisk at
+jeg har lett etter et alternativ.  Fronterløsningen har en innebygget
+løsning der en kan abonnere på forsiden (som viser en oppsummering av
+det en har tilgang til), og få tilsendt en kopi hver natt, men det
+fjerner jo bare behovet for å stikke innom, ikke den idiotiske ideen
+om at folk skal huske hvordan nettsiden så ut sist og oppdage hva som
+er endret.</p>
+
+<p>For å gjøre livet enklere har jeg derfor brukt litt tid på å lage
+et program som kobler seg opp og sjekker etter endringer automatisk,
+slik at jeg kan få beskjed fra datamaskinen når noe endrer seg i
+stedet for å forsøke å finne ut av det selv.  I går ble scriptet
+brukbart, og jeg er dermed klar til å dele det med deg.</p>
+
+<p>Jeg startet med å skrive programmet i Python, og hadde en versjon
+som logget inn og hentet ned enkeltsider fra Fronter.  Men
+Fronter-websidene suger golfballer gjennom en hangeslange, med
+uleselig HTML, flere nivåer av iframes og en struktur på innholdet som
+er svært vanskelig å finne ut av, så jeg ga til slutt opp lxml-parsing
+med python og forsøkte meg med WWW::Mechanize for Perl som jeg kjente
+fra før.  I ettertid har jeg oppdaget at WWW:Mechanize også finnes for
+python, så jeg kunne antagelig droppet språkbyttet.  Men da jeg
+oppdaget det hadde jeg kommet så langt med Perl-utgaven, så jeg hoppet
+ikke tilbake.</p>
+
+<p>For å logge inn i Fronter besøker en enten skolens websider eller
+den sentrale innlogginsiden <tt>https://fronter.com/osloskoler/</tt>.
+Perl-koden for å logge inn ser slik ut:</p>
+
+<pre>
+my $mech = WWW::Mechanize->new();
+$mech->get('https://fronter.com/osloskoler/');
+$mech->submit_form(fields => {
+    username    => $username,
+     password    => $password,
+} );
+</pre>
+
+<p>Neste steg er å få oversikt over hvilke «rom» en har tilgang til.
+På vår skole er det rom for skolen, biblioteket, elevrådet,
+aktivitetsskolen og klasser der en har unger, og dette vil være
+forskjellig fra person til person.  Etter å ha romstert rundt i
+Fronter-grensesnittet endel kom jeg over en grei HTMl-side med
+oversikt over rommene,
+<tt>https://fronter.com/osloskoler/adm/projects.phtml?mode=displayRoomchooser</tt>,
+så jeg bruker denne til å hente ut romoversikt med rom-ID.</p>
+
+<pre>
+my %room;
+$mech->get('https://fronter.com/osloskoler/adm/projects.phtml?mode=displayRoomchooser');
+for my $link ($mech->links()) {
+    my $url = $link->url();
+    if ($url =~ m%/links/list_files.phtml\?edit=(\d+)$%) {
+        $room{$link->text()} = $1;
+    }
+}
+</pre>
+
+<p>Når en har rom-ID kan en slå opp websiden for rommet, som starter
+på
+<tt>https://fronter.com/osloskoler/contentframeset.phtml?goto_prjid=$ROMID</tt>
+(der $ROMID byttes ut med rom-ID-tallet).  Det gir en side med
+iframes, og en må tre nivåer ned i iframes før en får tak i
+HTML-informasjonen som vises frem når en ser på det aktuelle rommet.
+Her ga jeg opp den robuste parsingen og hardkodet endel URL-er som i
+stedet bør spores opp maskinelt.  HTML-informasjonen som vises lagres
+i en fil etter at sessjons- og innloggs-nøkkel er fjernet og deretter
+bruker jeg <tt>lynx --dump --nolist</tt> for å hente ut en tekstlig
+utgave av websiden.  Denne tekstlige utgaven sammenlignes med forrige
+versjon og oversikt over endringer kan så sendes ut på egnet vis.</p>
+
+<p>Jeg valgte å bruke git til å holde rede på endringer, så jeg
+sjekker inn HTML og tekst-utgaver i git og bruker git til å vise frem
+endringene i tekstutgavene.  Programvaren for å gjøre dette er testet
+på Debian GNU/Linux og kan
+<a href="https://github.com/petterreinholdtsen/fronter-scraper-oslo">lastes
+ned fra github</a>.  For å bruke det, kjør følgende kommandoer på din
+Debian-maskin (forutsetter sudo-tilgang for installasjon av
+programvare):</p>
+
+<pre>
+sudo apt-get install git lynx-cur libio-prompter-perl libwww-mechanize-perl \
+      libconfig-inifiles-perl
+git clone https://github.com/petterreinholdtsen/fronter-scraper-oslo
+cd fronter-scraper-oslo
+./update-git
+</pre>
+
+<p>Det gjenstår endel, men systemet er allerede nyttig for meg.  Jeg
+ønsker at systemet også skal laste ned PDF-er og slikt som er lagt ut
+for nedlasting på sidene, slik at f.eks. ukeplaner kommer inn i
+git-arkivet mitt automatisk og jeg får automatisk beskjed når ny
+ukeplan er lagt ut.  Kanskje du kan bidra med å få det på plass, eller
+kanskje du har andre ting du vil fikse?  Jeg tar gjerne imot endringer
+og forbedringer.  Det er mye som kan gjøres bedre, og scriptet er ikke
+veldig robust mot endringer hos nettsidene til Fronter.  Jeg regner
+dermed med at det vil trengs oppdateringer jevnlig etter hvert som
+Fronter-løsningen endrer seg.</p>
+</div>
+      <div class="tags">
+        
+        
+        Tags: <a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>, <a href="http://people.skolelinux.org/pere/blog/tags/web">web</a>. 
+        
+        
+      </div>
+    </div>
+    <div class="padding"></div>
+    
     <div class="entry">
       <div class="title"><a href="http://people.skolelinux.org/pere/blog/Nude_body_scanner_now_present_on_Norwegian_airport.html">Nude body scanner now present on Norwegian airport</a></div>
       <div class="date">10th February 2015</div>
@@ -2519,90 +2636,6 @@ Heldigvis!</p>
     </div>
     <div class="padding"></div>
     
-    <div class="entry">
-      <div class="title"><a href="http://people.skolelinux.org/pere/blog/Vi_kan_selv_avsl_re_mobiltelefonoverv_kning.html">Vi kan selv avsløre mobiltelefonovervåkning</a></div>
-      <div class="date"> 3rd January 2015</div>
-      <div class="body"><p>Jeg sendte inn følgende leserinnlegg 2014-12-26, og etter en uke
-synes jeg det er på tide å publisere teksten på bloggen min.</p>
-
-<p><strong>Vi kan selv avsløre mobiltelefonovervåkning</strong></p>
-
-<p>Det er fascinerende å lese hvordan
-<a href="http://mm.aftenposten.no/stortinget-og-statsministeren-overvakes/">overvåkningen
-av mobiltelefoner med IMSI-fangere som Aftenposten avslørte</a> har
-blitt mottatt.  Men det er spesielt to poeng som jeg synes har fått
-for liten oppmerksomhet.</p>
-
-<p>Det ene er at innbyggerne nå selv kan avsløre når noen forsøker å
-overvåke oss.  Det hele lar seg gjøre takket være en fribruksdatabase
-over plasseringen til kjente mobilbasestasjoner som heter
-OpenCellID. Enhver med en Android-basert mobiltelefon kan ta i bruk
-«<a href="https://github.com/SecUpwN/Android-IMSI-Catcher-Detector">Android
-IMSI Catcher Detector</a>» ved å laste den ned fra Internett og slik
-få tak i verktøyet som Aftenposten brukte for å oppdage de uoffisielle
-mobilbasestasjonene. Ved hjelp av dette verktøyet kan Android-brukere
-få varsel i smarttelefonen når slike oppdages, uansett om det er
-kriminelle, offisielle myndigheter eller utenlandske
-etterretningsorganisasjoner som står bak.  Vi har dermed alle mulighet
-til å oppdage avlytting, og trenger ikke håpe på at PST, Post og
-Teletilsynet eller mobilselskapene gjør jobben for oss.  De vil
-uansett måtte holde overvåkning fra offisielle myndigheter skjult for
-befolkningen.</p>
-
-<p>Det andre er at den viktigste informasjonen IMSI-fangere samler inn
-er hvem som er i kontakt med hvem og hvor de befinner seg (også kalt
-metadata), ikke hva som blir sagt og skrevet når folk er i kontakt med
-hverandre. Den som f.eks. vet hvilke politikere som snakker med hvem
-kan få innsikt i hvordan politikere påvirkes og hvilke sårbare punkter
-de har.  Forskerne ved senter for Internet og samfunn ved Stanford Law
-School har dokumenterte i sitt metadata-prosjekt
-<a href="https://cyberlaw.stanford.edu/blog/2013/12/spy-your-metadata">at
-slik innsamlet informasjon blant annet kan avsløre medisinske
-tilstander, politiske sympatier, religiøse overbevisninger</a>.  I
-tillegg har den pensjonerte generalen Michael Hayden i USA, som har
-ledet både CIA og NSA,
-<a href="http://www.thenewamerican.com/usnews/crime/item/18244-we-kill-people-based-on-metadata-admits-former-cia-nsa-boss">innrømmet
-at USA dreper folk basert på innsamlede metadata</a>. Begge deler
-forteller
-<a href="http://kieranhealy.org/blog/archives/2013/06/09/using-metadata-to-find-paul-revere/">hvor
-verdifullt metadata er</a>, og gir grunn til å være mer bekymret for
-innsamling av metadata enn avlytting.</p>
-
-<p>Seniorrådgiver Roar Thon i Nasjonal Sikkerhetsmyndighet sier ofte
-at hver og en av oss er ansvarlig for vår egen sikkerhet, og
-Aftenpostens avsløring har gjort flere kjent med verktøy vi har
-tilgjengelig for å ta dette ansvaret.  Men det reelle problemet er jo
-ikke at det settes opp utstyr vi ikke kan stole på, men at
-telefonsystemet er laget slik at det er mulig å sette opp slik
-utstyr.</p>
-
-<p>Vennlig hilsen
-<br>Petter Reinholdtsen
-<br>Medlem i <a href="http://www.nuug.no/">foreningen NUUG</a></p>
-
-<p>Etter at jeg skrev dette innlegget ble en ny Android-app,
-<a href="https://opensource.srlabs.de/projects/snoopsnitch">SnoopSnitch</a>,
-som gjør tilsvarende sniffing etter uoffisielle mobilbasestasjoner
-lansert.  Jeg vet ikke hvilke av dem som er best.</p>
-
-<!--
-
-Publisert som
-http://h-debatt.no/innlegg/vi-kan-selv-avslore-overvakning/
-Klassekampen 2014-12-31 side 39
-
--->
-</div>
-      <div class="tags">
-        
-        
-        Tags: <a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk</a>, <a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug</a>, <a href="http://people.skolelinux.org/pere/blog/tags/personvern">personvern</a>, <a href="http://people.skolelinux.org/pere/blog/tags/surveillance">surveillance</a>. 
-        
-        
-      </div>
-    </div>
-    <div class="padding"></div>
-    
     <p style="text-align: right;"><a href="index.rss"><img src="http://people.skolelinux.org/pere/blog/xml.gif" alt="RSS feed" width="36" height="14" /></a></p>
     <div id="sidebar">
       
@@ -2616,7 +2649,7 @@ Klassekampen 2014-12-31 side 39
 
 <li><a href="http://people.skolelinux.org/pere/blog/archive/2015/01/">January (7)</a></li>
 
-<li><a href="http://people.skolelinux.org/pere/blog/archive/2015/02/">February (3)</a></li>
+<li><a href="http://people.skolelinux.org/pere/blog/archive/2015/02/">February (4)</a></li>
 
 </ul></li>
 
@@ -2868,7 +2901,7 @@ Klassekampen 2014-12-31 side 39
 
  <li><a href="http://people.skolelinux.org/pere/blog/tags/multimedia">multimedia (32)</a></li>
 
- <li><a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk (259)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/norsk">norsk (260)</a></li>
 
  <li><a href="http://people.skolelinux.org/pere/blog/tags/nuug">nuug (172)</a></li>
 
@@ -2920,7 +2953,7 @@ Klassekampen 2014-12-31 side 39
 
  <li><a href="http://people.skolelinux.org/pere/blog/tags/vitenskap">vitenskap (4)</a></li>
 
- <li><a href="http://people.skolelinux.org/pere/blog/tags/web">web (34)</a></li>
+ <li><a href="http://people.skolelinux.org/pere/blog/tags/web">web (35)</a></li>
 
 </ul>