blackmann
Goto Top

PDF oder TXT-Datei auslesen

N'Abend allerseits,

ich habe hier aus eine aus einer PDF generierte TXT-Datei mit knapp 3800 Zeilen, hier ein Ausschnitt:

.....
 74  <link itemprop="associatedMedia" href="https://firma.net/store/Pumpe_2013-05-10/2013-05-10%20Akasaka%20Blitz%2C%20Tokyo%2C%20Japan/07.%20The%20Hall%20Of%20Mirrors.txt">  
 75  </div>
 76  <meta itemprop="duration" content="PT0M212135S">  
 77  <link itemprop="associatedMedia" href="https://firma.net/store/Pumpe_2013-05-10/2013-05-10%20Akasaka%20Blitz%2C%20Tokyo%2C%20Japan/08.%20Showroom%20Dummies.txt">  
 78   </div>
 79   <meta itemprop="duration" content="PT0M70067S">  
.....


Nun möchte ich mittels PowerShell genau die dort enthaltenen URL in eine neue TXT-Datei kopieren mit diesem Ziel:

https://firma.net/store/Pumpe_2013-05-10/2013-05-10%20Akasaka%20Blitz%2C%20Tokyo%2C%20Japan/07.%20The%20Hall%20Of%20Mirrors.txt
https://firma.net/store/Pumpe_2013-05-10/2013-05-10%20Akasaka%20Blitz%2C%20Tokyo%2C%20Japan/08.%20Showroom%20Dummies.txt

Also alles zwischen 'https.....txt', aber genau damit tue ich mich schwer.

Ggfls wäre auch gleich das Auslesen der PDF und die Generierung der TXT-Datei

Hat da einer 'ne Idee?

Thanks BM

Content-ID: 670157

Url: https://administrator.de/contentid/670157

Ausgedruckt am: 16.12.2024 um 09:12 Uhr

gastric
Lösung gastric 12.12.2024, aktualisiert am 13.12.2024 um 07:50:46 Uhr
Goto Top
Hi
[regex]::matches((Get-Content "c:\datei.txt" -raw),'(?is)https?://[^"]+').Value | set-content -Path datei_neu.txt  
Aber wieso hast du HTML Code in einem PDF?? Das lässt sich doch direkt auslesen ohne den Umweg eines PDFs.

Hier gibt's noch mehr Info zum direkt auslesen von PDFs
Pdf in Excel Bestellnummern auslesen
Den Regex einfach damit kombinieren und du bist im Spiel.

Gruß gastric
Crusher79
Crusher79 12.12.2024 um 21:19:17 Uhr
Goto Top
Hallo,

https://stackoverflow.com/questions/35110530/extracting-html-links-with- ...

$HTML.ParsedHtml.getElementsByTagName('div') |  
  Where-Object { $_.className -eq 'detail' } |  
  ForEach-Object { $_.getElementsByTagName('a') } |  
  Where-Object { $_.className -eq 'product-url' } |  
  Select-Object -Expand href

Ähnlich wie bei JSON, XML kann man auch die Elemente auslesen.
Blackmann
Blackmann 13.12.2024 um 09:13:23 Uhr
Goto Top
Moin,

vielen Dank Euch beiden, die Lösung von 'gastric' konnte ich gut nach meinen Wünschen anpassen.

Einen schönen Advent

BM