Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
efinf:blc2016:regex [2016/11/14 16:16] Ivo Blöchliger [Aufgaben] |
efinf:blc2016:regex [2016/11/29 14:24] (current) Ivo Blöchliger |
||
---|---|---|---|
Line 35: | Line 35: | ||
</ | </ | ||
+ | Nach gsub kann zusätzlich ein Block folgen, der als Parameter den aktuellen match (als String) bekommt. Dieser wird durch das Resultat vom Block ersetzt. Beispiel: | ||
+ | <code ruby> | ||
+ | str = " | ||
+ | p str.gsub(/ | ||
+ | m[0]+m[1].upcase | ||
+ | } | ||
+ | </ | ||
+ | ==== Eliza ==== | ||
+ | Ziel: Englische Sätze von der Ich- in die Du-Form umschreiben mittels Regular Expressions. Beispiele: | ||
+ | * I think my toe hurts -> Why do **you** think that **your** toe hurts? | ||
+ | * I'm so sad -> Does is happen often that **you' | ||
+ | * I told you so -> Can you elaborate on why **you** told **me** so? | ||
+ | |||
+ | Dateien vom Donnerstag 17.11. (bräuchten noch ein bisschen Arbeit): | ||
+ | * {{ : | ||
+ | * {{ : | ||
==== Nesa-Pilot ==== | ==== Nesa-Pilot ==== | ||
* Installieren Sie den Chrome (sudo apt-get install chromium-browser) | * Installieren Sie den Chrome (sudo apt-get install chromium-browser) | ||
- | * Drücken | + | * In Chrome, drücken |
- | * Gehen Sie auf die Startseite von Nesa: https:// | + | * Gehen Sie auf die Startseite von Nesa: https:// |
- | * Rechts-Klick auf ersten Netzwerkzugriff: | + | * Rechts-Klick auf ersten Netzwerkzugriff |
Das curl-Kommando muss jetzt noch ein bisschen angepasst werden, damit die Cookies gespeichert und wiederverwendet werden: | Das curl-Kommando muss jetzt noch ein bisschen angepasst werden, damit die Cookies gespeichert und wiederverwendet werden: | ||
- | - Fügen Sie die Optionen '' | + | - Fügen Sie die Optionen '' |
- Löschen Sie die entsprechende Header Option (falls vorhanden), die ein altes Cookie sendet (-H etc..) | - Löschen Sie die entsprechende Header Option (falls vorhanden), die ein altes Cookie sendet (-H etc..) | ||
Line 58: | Line 74: | ||
* Loggen Sie sich auf Nesa ein. | * Loggen Sie sich auf Nesa ein. | ||
- | | + | * Rechts-Klick auf ersten Netzwerkzugriff: |
- | | + | * Modifizieren Sie das curl-Kommando wie oben. |
+ | * In diesem Kommando muss der loginhash angepasst werden | ||
+ | |||
+ | |||
+ | <code ruby> | ||
+ | logincurl = File.read(" | ||
+ | puts logincurl | ||
+ | # logincurl.gsub!(.....) | ||
+ | puts logincurl | ||
+ | |||
+ | # Erste Seite nach login herunterladen | ||
+ | nesaseite = `# | ||
+ | </ | ||
+ | |||
+ | Zusammengefasst als Funktion (liefert erste Seite nach Login): | ||
+ | <code ruby> | ||
+ | def getStartPage | ||
+ | `rm nesa-cookies.txt` | ||
+ | startseite = `bash startseite.curl`.force_encoding(" | ||
+ | |||
+ | # input type=" | ||
+ | |||
+ | loginhash=startseite.scan(/ | ||
+ | |||
+ | curllogin=File.read(" | ||
+ | curllogin.gsub!(/ | ||
+ | `# | ||
+ | end | ||
+ | |||
+ | </ | ||
+ | |||
+ | Nach erfolgreichem Login muss die Seite nach den gewünschten Links abgesucht werden: | ||
+ | * Im " | ||
+ | * Was zwischen nach href="" | ||
+ | |||
+ | |||
+ | Zeichnen Sie dann einen beliebigen Seitenzugriff auf und kopieren sie das curl-Kommando, |