Page 2 of 2

Re: HTML-Konverter

Posted: 28. Oct 2010, 21:37
by jpg153

Code: Select all

w3m url > TEXTFILE
Indeed, this produced a text file - unfortunately although it looks table like formatted, its separating columns by blanks, which are difficult to resolve into other placeholders...argh :x

Code: Select all

sed -e 's/<[^<>]*>//g; /^[ ]*$/d' test.html
Ehrlich gesagt habe ich den Eintrag im Forum schon nicht verstanden und ob ich dies eingebe oder die Sequenz aus dem Forum

Code: Select all

cat test.html | sed -e 's/<[^<>]*>//g; /^[ ]*$/d'
passieren tut eigentlich nix - ok, es rauschen Unmengen Zeichen/Zeilen über den Bildschirm, aber es bleibt nix Verwertbares übrig...
Vermutlich meinen die Jungs "einfach" Tags und nicht die komplexeren Ausgaben...

Ich habe es auch noch mit einem Tool unter WinXP versucht, aber das steigt bei der Größe auch aus...

Ich bastel jetzt mal mit Browser und Geany (Ersetzen) und erzeuge eine Meta-Formatierung mit Separatoren die
ich nachher wieder rauslösen kann, die aber die Struktur der Tabelle erhalten.

Danke an Euch!

Re: HTML-Konverter

Posted: 28. Oct 2010, 21:43
by thenktor
Probier:

Code: Select all

cat test.html | sed -e 's/<[^<>]*>//g; /^[ ]*$/d' > test.txt
Auf den ersten Blick würde ich sagen: das entfernt alle HTML-Tags (also alles zwischen < und >).

Und wie dir vielleicht auffällt schreibt ein > test.txt am Ende eines Befehls die Ausgaben in die Datei test.txt, statt sie im Terminal auszugeben. ;)

Re: HTML-Konverter

Posted: 29. Oct 2010, 12:52
by damNageHack
jpg153 wrote:

Code: Select all

sed -e 's/<[^<>]*>//g; /^[ ]*$/d' test.html
Ehrlich gesagt habe ich den Eintrag im Forum schon nicht verstanden und ob ich dies eingebe oder die Sequenz aus dem Forum

Code: Select all

cat test.html | sed -e 's/<[^<>]*>//g; /^[ ]*$/d'
passieren tut eigentlich nix - ok, es rauschen Unmengen Zeichen/Zeilen über den Bildschirm, aber es bleibt nix Verwertbares übrig...
Vermutlich meinen die Jungs "einfach" Tags und nicht die komplexeren Ausgaben...
Deshalb habe ich gleich im ersten Post gefragt, was du da eigentlich genau vorhast :D
Du meintest zuerst genau das, nämlich die Tags entfernen und genau das macht die Zeile mit sed, thenktor hat es ja auch so verstanden. Von daher weiß wohl niemand so genau wie man dir helfen soll ... :roll:
jpg153 wrote: Ich habe es auch noch mit einem Tool unter WinXP versucht, aber das steigt bei der Größe auch aus...
Wenn du bereits alles versucht hast, wieso fragst du dann noch?
Nächstes Mal solltest du dir vielleicht gleich am Anfang Gedanken machen, was du eigentlich willst, bevor um Hilfe zu schreien. Niemand kann durch das Forum hellsehen ;)

Re: HTML-Konverter

Posted: 31. Oct 2010, 16:18
by jpg153
Nun,

tatsächlich werden die Tags entfernt, es bleiben jedoch alle non-breaking-spaces erhalten und die Spalten
sind nicht getrennt sondern nahtlos an den vorangegangenen Text angefügt.
Die nbsp wären somit kein Problem, bei mehrspaltigen Texten ist das Ergebnis allerdings suboptimal.
In der Tat fehlte mit die Ausgabe als > test.txt damit das Ergebnis erhalten wurde :oops:

Ich weiß schon was ich will und hab's ja auch beschrieben.
Nur liefert eben kein Tool das Ergebnis wie ich es optimal nutzen kann.

Am Ende erscheint mir der Weg über den Browser und Nachbearbeitung mit Geany o.ä. noch der beste Ansatz.
Leider eben auch nicht unaufwändig ;)

Bei ganz einfachen Strukturen ist 'sed' sicherlich eine Alternative. Vielleicht gelingt es mir ja auch mit 'sed' die entfernten <...>-Ketten mit einem Trennsymbol zu ersetzen oder die <> stehen zu lassen und nur den Text dazwischen raus zu kegeln. ... Mal sehen ob ich das irgendwo finde, ansonsten muss ich nochmal nach "Hilfe schreien". :P

Re: HTML-Konverter

Posted: 31. Oct 2010, 20:45
by damNageHack
jpg153 wrote: Bei ganz einfachen Strukturen ist 'sed' sicherlich eine Alternative. Vielleicht gelingt es mir ja auch mit 'sed' die entfernten <...>-Ketten mit einem Trennsymbol zu ersetzen oder die <> stehen zu lassen und nur den Text dazwischen raus zu kegeln. ... Mal sehen ob ich das irgendwo finde, ansonsten muss ich nochmal nach "Hilfe schreien". :P
Meinst du das?

Code: Select all

cat test.html | sed -e 's/<[^<>]*>/TRENNER/g; /^[ ]*$/d' > test.txt
Da wo TRENNER steht, einfach dein gewünschtes "Trennsymbol" anstelle dessen eintragen, eventuell gar nix - wie anfangs erst angenommen.
Oder wenn du dann <> als Trenner haben willst, eben das:

Code: Select all

cat test.html | sed -e 's/<[^<>]*>/<>/g; /^[ ]*$/d' > test.txt
Es geht also auch für die nicht ganz so einfachen Dinge. Man muss nur wissen, was man machen will (und wie). ;)
Das zwischen s/ und dem nächsten / ist der reguläre Ausdruck, der die zu suchende Zeichenfolge(n) angibt, danach kommt bis zum folgenden / was anstelle dessen stehen soll (Suchen und Ersetzen).
Das Ganze geht auch mit einem ordentlichen Editor, man muss dafür kein sed verwenden. Reguläre Ausdrücke folgen einer eigenen Sprache.

Re: HTML-Konverter

Posted: 1. Nov 2010, 13:09
by jpg153
Hallo,

ja, Danke, das war der fehlende Code-Schnippel! :D :idea: :!:

Damit erzeugt sed tatsächlich eine recht saubere Text-Datei. Den Rest mache ich in Geany mit 'Ersetzen'.
Das funktioniert auch mit der danz dicken HTML-Seite in Sekunden (auf einem alten 1GHz Einkern).