Hej.
Lang tid siden jeg har været her sidst.
Jeg har et nyt projekt: DR.DK/TV trafik skal igennem en TLS endpoint proxy - og så ændre web sider
Problemet
For nyligt har DR lavet om på deres design i dr.dk/drtv/, som er er noget UX design klamp.
Jeg er meget træt af jeg konstant skal klikke med musen for at se om der er flere videoer i for eksempel https://www.dr.dk/drtv/kategorier/dokumentar
Problemet starter i https://www.dr.dk/drtv/
"Tæt af" skal forstås på den måde at min krop fortæller mig at det er for anstrengende at blive med at gentage det samme hel tiden (højre klikke).
Løsning
Jeg har tænkt mig at gøre dette:
På en Raspberry Pi kører jeg en TLS endpoint proxy. Det den gør er at den dekrypterer web trafik. Mit formål er at jeg vil lave ændringer på en web side før den når en browser.
For at web trafikken sikker igen, så krypterer jeg web trafikken imellem Raspberry Pi computeren og min Desktop computer.
Det ukrypterede køres igennem en HTML parser, hvor jeg så laver nogle ændringer, og derefter udskriver DOM træet til et nyt HTML dokument. HTML parseren hedder html5ever , og er en del af Mozillas Servo projekt. html5ever parseren vil blive brugt i Firefox browseren
Det er dette HTML dokument som browseren modtager.
Jeg skal kun have det til at ske for dr.dk, og kun for visse sider : dr.dk/drtv/ og nedefter.
For at det skal kunne ske for dr.dk, så skal man route IP pakker fra dr.dk IP adresser til Raspberry Pi computeren.
Fra Raspberry Pi computeren routes pakkerne så til min desktop computers IP adresse og den port som en browser sendte HTTPS forespørgslen fra.
Det er fra min desktop computers IP adresse og en TCP port at browseren henter web sider fra.
Jeg gør det uden for browseren fordi jeg registrere oplysninger fra dr.dk/drtv/ web siden i en database. Fra den database kan man så generere en bookmark backup fil, som så kan indsættes i en browsers' bookmarks.
Det er måske muligt direkte at manipulere fx. Firefox browserens bookmark Sqlite database fil - når browseren ikke kører.
/Lars
Edit 20191206T1952UTC+1.
Ændret titlen fra Nyt projekt: DR.DK/TV trafik skal igennem en TLS endpoint proxy - og så ændre web sider til Nyt projekt: Jeg har brug for at ændre på DR:DK/DRTV web sider.
Nyt projekt: Jeg har brug for at ændre på DR.DK/DRTV web sider.
-
- Indlæg: 5095
- Tilmeldt: 27. apr 2008, 02:16
- IRC nickname: lars_t_h
- Geografisk sted: Fyn
Nyt projekt: Jeg har brug for at ændre på DR.DK/DRTV web sider.
Senest rettet af lath 6. dec 2019, 19:52, rettet i alt 3 gange.
Jeg er Software ingeniør (Diplomingeniør) i Informationsteknologi og indlejede systemer, hvor indlejrede systemer er computer (microcontroller) + elektronik i for eksempel et TV, en router, en vaskemaskine og den slags
-
- Indlæg: 5095
- Tilmeldt: 27. apr 2008, 02:16
- IRC nickname: lars_t_h
- Geografisk sted: Fyn
Re: Nyt projekt: DR.DK/TV trafik skal igennem en TLS endpoint proxy - og så ændre web sider
Jeg glemte lige:
Hvis du har en bedre løsning vil jeg gerne høre fra dig.
WebAssembly (WASM)lavet af Rust compileren er selvfølgelig en oplagt idé.
/Lars
Hvis du har en bedre løsning vil jeg gerne høre fra dig.
WebAssembly (WASM)lavet af Rust compileren er selvfølgelig en oplagt idé.
/Lars
Jeg er Software ingeniør (Diplomingeniør) i Informationsteknologi og indlejede systemer, hvor indlejrede systemer er computer (microcontroller) + elektronik i for eksempel et TV, en router, en vaskemaskine og den slags
-
- Admin
- Indlæg: 5604
- Tilmeldt: 26. apr 2010, 02:40
- IRC nickname: ClaudiuS
- Geografisk sted: Nyborg [fyn]
Re: Nyt projekt: DR.DK/TV trafik skal igennem en TLS endpoint proxy - og så ændre web sider
Ikke for noget, men har du lagt mærke til at det nye layout på DR.DK ligger tæt op af programoversigten på Smart-TV?
Med Venlig Hilsen
Klaus
Kører Ubuntu 24.04.1 på ASUS All-Series, og Probook 4520s.
Gratis Ubuntumagasin: http://fullcirclemagazine.org/
https://mega.nz/folder/aJsmCYKa#dxMHKTi4Idmz6hiVpsI68Q
Klaus
Kører Ubuntu 24.04.1 på ASUS All-Series, og Probook 4520s.
Gratis Ubuntumagasin: http://fullcirclemagazine.org/
https://mega.nz/folder/aJsmCYKa#dxMHKTi4Idmz6hiVpsI68Q
-
- Admin
- Indlæg: 20878
- Tilmeldt: 15. nov 2009, 15:04
- IRC nickname: AJenbo
- Geografisk sted: Vanløse, København
Re: Nyt projekt: DR.DK/TV trafik skal igennem en TLS endpoint proxy - og så ændre web sider
Måske nemmere at lave et Grease Monkey script der laver om på siden, så behøves du ikke 2 computere, en paser engine, kryptering og de kryptering + den kode du slev vil skulle skrive.
-
- Indlæg: 5095
- Tilmeldt: 27. apr 2008, 02:16
- IRC nickname: lars_t_h
- Geografisk sted: Fyn
Re: Nyt projekt: DR.DK/TV trafik skal igennem en TLS endpoint proxy - og så ændre web sider
Klaus Rasmussen skrev:Ikke for noget, men har du lagt mærke til at det nye layout på DR.DK ligger tæt op af programoversigten på Smart-TV?
Jeg har ikke et TV, så nej, men meget interessant oplysning, tak.
/Lars
Jeg er Software ingeniør (Diplomingeniør) i Informationsteknologi og indlejede systemer, hvor indlejrede systemer er computer (microcontroller) + elektronik i for eksempel et TV, en router, en vaskemaskine og den slags
-
- Indlæg: 5095
- Tilmeldt: 27. apr 2008, 02:16
- IRC nickname: lars_t_h
- Geografisk sted: Fyn
Re: Nyt projekt: DR.DK/TV trafik skal igennem en TLS endpoint proxy - og så ændre web sider
AJenbo skrev:Måske nemmere at lave et Grease Monkey script der laver om på siden, så behøves du ikke 2 computere, en paser engine, kryptering og de kryptering + den kode du slev vil skulle skrive.
God idé!
Måske skulle jeg tænke på at lave en (Firefox/Chrome add-on i stedet for? Så kunne andre også få gavn af det.
Problem :
Jeg er ikke en fan af Javascript, og så skriver jeg det på en pænere måde end jeg ellers kunne finde på at skrive det.
Det er ikke usandsynligt at der er nogle andre der har haft omtrent samme type problem, og derfor har noget kode jeg kan genbruge.
Det kunne i øvrigt være interessant om jeg kan bruge WASM i en add-on/tilføjelse : Jeg er ved at lære Rust.
Jeg ved at der er et værktøj der hedder "web-bindgen", der kan lave et Rust Web API ud fra et JavaScript Web API.
Med web-bindgen vil Rust kode kunne kalde ind i alle JavaScript Web APIs, JavaScript kan også kalde ind i et Rust API. Kalde ind i alle (JavaScript) Web APIs er lavet og er tilgængelig i en crate hvis navn jeg ikke kan huske lige nu, men der er nok ikke lavet Rust bindinger for WebExtension APIet, hint : https://crates.io/search?q=webextension
Jeg har ikke været inde og kigge på https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions i nogen som helst detaljer.
/Lars
Jeg er Software ingeniør (Diplomingeniør) i Informationsteknologi og indlejede systemer, hvor indlejrede systemer er computer (microcontroller) + elektronik i for eksempel et TV, en router, en vaskemaskine og den slags