Bestimtme Links aus Quelltext in txt speichern.
Hallo,
da ich nun nach einer echten Ewigkeit noch keine Lösung gefunden habe, bitte ich hier mal um Hilfe!
Ich habe eine .txt (a.txt) datei die einen Ursprünglichen html-Quelltext enthält. Aus dieser Datei sollen nun mittels Batch alle Links, die mit "http://www.webseite.de/six/src/" beginnen ausgelesen und in eine neue Textdatei gespeichert werden (1 Link Pro Zeile). Einige Beispiele wären:
http://www.webseite.de/six/src/135255765397.jpg
http://www.webseite.de/six/src/135257344398.jpg
http://www.webseite.de/six/src/135255799129.jpg
Sprich: Der Link bleibt gleich, bis auf die Zahl.
Die Links liegen alle auf folgende Weise in der Ausgangsdatei vor:
... <a target="_blank" href="/out.php?url=http://www.webseite.de/six/src/135255765397.jpg;> <span id ...
Nochmal im kurzdurchlauf:
Textdatei auslesen und das was zwischen
" <a target="_blank" href="/out.php?url= "
und
" "> <span id ... "
steht in eine neue datei kopieren. -> b.txt
Mit
findstr /c:"http://www.webseite.de/six/src/" a.txt > b.txt
konnte ich bereits alle zeilen die einen Link enthalten wie gewünscht auslesen. Aber den Rest bekomme ich leider nicht weg. Gibt es einfachere Lösungswege IN BATCH?
Danke und liebe Grüße,
Thomas.
da ich nun nach einer echten Ewigkeit noch keine Lösung gefunden habe, bitte ich hier mal um Hilfe!
Ich habe eine .txt (a.txt) datei die einen Ursprünglichen html-Quelltext enthält. Aus dieser Datei sollen nun mittels Batch alle Links, die mit "http://www.webseite.de/six/src/" beginnen ausgelesen und in eine neue Textdatei gespeichert werden (1 Link Pro Zeile). Einige Beispiele wären:
http://www.webseite.de/six/src/135255765397.jpg
http://www.webseite.de/six/src/135257344398.jpg
http://www.webseite.de/six/src/135255799129.jpg
Sprich: Der Link bleibt gleich, bis auf die Zahl.
Die Links liegen alle auf folgende Weise in der Ausgangsdatei vor:
... <a target="_blank" href="/out.php?url=http://www.webseite.de/six/src/135255765397.jpg;> <span id ...
Nochmal im kurzdurchlauf:
Textdatei auslesen und das was zwischen
" <a target="_blank" href="/out.php?url= "
und
" "> <span id ... "
steht in eine neue datei kopieren. -> b.txt
Mit
findstr /c:"http://www.webseite.de/six/src/" a.txt > b.txt
konnte ich bereits alle zeilen die einen Link enthalten wie gewünscht auslesen. Aber den Rest bekomme ich leider nicht weg. Gibt es einfachere Lösungswege IN BATCH?
Danke und liebe Grüße,
Thomas.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 207179
Url: https://administrator.de/forum/bestimtme-links-aus-quelltext-in-txt-speichern-207179.html
Ausgedruckt am: 05.06.2025 um 23:06 Uhr
3 Kommentare
Neuester Kommentar
Hallo Subrosa20 und willkommen im Forum!
Im einfachsten Fall etwa so:
Da Deiner Darstellung nicht so ganz genau zu entnehmen ist, ob nach dem Link nun ein Semikolon, ein Leerzeichen oder gleich ein ">" folgt, habe ich alle 3 Möglichkeiten berücksichtigt ...
Grüße
bastla
Im einfachsten Fall etwa so:
@echo off & setlocal
del b.txt 2>nul
for /f "delims=" %%i in ('findstr /c:"http://www.webseite.de/six/src/" a.txt') do set "Zeile=%%i" & call :ProcessLine
goto :eof
:ProcessLine
for /f "delims==; >" %%a in ("%Zeile:*url=%") do >>b.txt echo %%a
goto :eof
Grüße
bastla
Hallo Subrosa20,
ein Vorschlag mit GNU sed:
Gruss!
ein Vorschlag mit GNU sed:
@echo off&setlocal
(for /f %%i in (
'sed "s/.*=\(.*\);.;.*/\1/" file'
) do (
echo(%%i
))>out.txt
Gruss!
und für die Powershell-Fraktion:

function Get-Matches($Pattern,$groupNumber = 0) {
begin { $regex = New-Object Regex($pattern) }
process { foreach ($match in ($regex.Matches($_))) { ([Object[]]$match.Groups)[$groupNumber].Value } }
}
$Textdatei = "D:\a.txt"
get-content $Textdatei | Get-Matches "(?i)\bhttp://www.webseite.de/six/src/[0-9]*\.jpg"