ubuntuusers.de

Text-Browser elinks mit Pipe, CLI oder Skript fernsteuern

Status: Gelöst | Ubuntu-Version: Ubuntu 14.04 (Trusty Tahr)
Antworten |

diggde

Anmeldungsdatum:
1. Dezember 2014

Beiträge: 10

Hallo,

ich möchte gerne automatisiert den Quelltext eine Webseite als File abspeichern, um diese automatisiert auszuwerten. Ich habe das manuell schon mit den Text-Browser "links" und "elinks" getestet und funktioniert soweit auch. Problematisch ist, das man sich erst auf einer Anmeldeseite einloggen muss und dann kann man die Daten-Seite aufrufen und abspeichern.

Wie kann ich das jetzt per Skript, CLI oder vielleicht mit einer Pipe automatisch steuern: 1. Aufruf login.html 2. Eingabe Login-Daten und Formular absenden 3. Aufruf daten.html 4. Quellcode abspeichern

Cool wäre auch, wenn man das vorher wie bei einem Makrorekorder sogar "aufnehmen" könnte.

Gibt es sowas?

Vielen Dank!

zim

Avatar von zim

Anmeldungsdatum:
27. Juni 2005

Beiträge: 662

Wohnort: bremen

Hi,

ich würde es mal mit wget probieren. Damit kann man sich anscheinend auch auf Websiten anmelden.

Grüße
zim

rklm Team-Icon

Projektleitung

Anmeldungsdatum:
16. Oktober 2011

Beiträge: 13174

zim schrieb:

ich würde es mal mit wget probieren. Damit kann man sich anscheinend auch auf Websiten anmelden.

Zusätzlich sollte man auch noch "--keep-session-cookies" verwenden.

diggde

(Themenstarter)

Anmeldungsdatum:
1. Dezember 2014

Beiträge: 10

Danke für den Hinweis, aber wget unterstützt nur die Anmeldung über eine Authentifizierung. Ich muß mich aber über ein Formular auf der Seite einloggen. Also direkt mit der Seite interagieren, oder direkt ein Post-Request absenden.

Ciau g.g.

diggde

(Themenstarter)

Anmeldungsdatum:
1. Dezember 2014

Beiträge: 10

Ich habe gesehen, das man da auch ein Post absetzen kann. Ich versuche das mal.

diggde

(Themenstarter)

Anmeldungsdatum:
1. Dezember 2014

Beiträge: 10

Problem ist gelöst:

Hier ein schöne Anleitung für Fernsteuerung per pipe: https://vimeo.com/19616296

Aber besser ist die Fernsteuerung per Skript mit expect: http://expect.sourceforge.net/ mit autoexpect kann man sogar die Eingaben "aufnehmen"

Danke!

rklm Team-Icon

Projektleitung

Anmeldungsdatum:
16. Oktober 2011

Beiträge: 13174

diggde schrieb:

Hier ein schöne Anleitung für Fernsteuerung per pipe: https://vimeo.com/19616296

Mit einer Named Pipe? Wozu denn das, wenn man wget nutzt?

Aber besser ist die Fernsteuerung per Skript mit expect: http://expect.sourceforge.net/ mit autoexpect kann man sogar die Eingaben "aufnehmen"

Wieso brauchst Du da expect? Das hätte ich nicht erwartet. Wenn Du Dich per wget einloggst, indem Du ein Form POSTest, dann musst Du doch nicht auf Ausgaben warten.

Mit curl geht so etwas übrigens auch. Meist verwendet man das eher zur Webseitenautomatisierung in Skripten als wget.

diggde

(Themenstarter)

Anmeldungsdatum:
1. Dezember 2014

Beiträge: 10

Ich hatte es bereits mit cURL probiert und das scheitert an einem Javascript-Problem. Ich habe auch hier http://www.php.de/php-fortgeschrittene/112187-problem-beim-auslesen-von-html-sourcecode-mit-curl.html mal genauer nachgefragt und keine Antwort bekommen. Wenn Du da eine Idee hast, gerne ...?

Genau das gleiche Problem tritt bei wget auf, auch hier scheint es Schwierigkeiten mit dem JavaScript zu geben. Selbst die Browser "lynx" und "w3m" haben Probleme die Seite richtig darzustellen. Keine Probleme hingegen hatten die Text-Browser "links" und "elinks". Da lag es nahe, diese zu verwenden.

Die Fernsteuerung eines textbasierten Browsers ist genau die Lösung, wenn eben solche Tools wie wget und cURL nicht die richtigen Ergebnisse liefern.

Antworten |