Cum să extrageți linkurile din orice pagină Web utilizând PowerShell

Cuprins:

Video: Cum să extrageți linkurile din orice pagină Web utilizând PowerShell

Video: Cum să extrageți linkurile din orice pagină Web utilizând PowerShell
Video: How to Change Windows 7 Taskbar Color Tutorial HD 2024, Martie
Cum să extrageți linkurile din orice pagină Web utilizând PowerShell
Cum să extrageți linkurile din orice pagină Web utilizând PowerShell
Anonim
PowerShell 3 are o mulțime de caracteristici noi, inclusiv unele noi caracteristici puternice legate de web. Ele simplifică în mod dramatic automatizarea web-ului și astăzi vă vom arăta cum puteți extrage fiecare legătură dintr-o pagină Web și descărcați opțional această resursă dacă doriți.
PowerShell 3 are o mulțime de caracteristici noi, inclusiv unele noi caracteristici puternice legate de web. Ele simplifică în mod dramatic automatizarea web-ului și astăzi vă vom arăta cum puteți extrage fiecare legătură dintr-o pagină Web și descărcați opțional această resursă dacă doriți.

Eliminarea Web-ului cu PowerShell

Există două cmdlet-uri noi care facilitează automatizarea web-ului, Invoke-WebRequest, care facilitează parsarea conținutului lizibil pentru oameni și Invoke-RestMethod, care facilitează citirea conținutului lizibil de la mașină. Deoarece legăturile fac parte din codul HTML al unei pagini, ele fac parte din chestiile care pot fi citite de om. Tot ce trebuie să faceți pentru a obține o pagină Web este să utilizați Invoke-WebRequest și să-i dați un URL.

Invoke-WebRequest –Uri ‘https://howtogeek.com’

Dacă parcurgeți în jos veți vedea că răspunsul are o proprietate de link-uri, putem folosi funcția de enumerare a membrilor noului PowerShell 3 pentru a le elimina.
Dacă parcurgeți în jos veți vedea că răspunsul are o proprietate de link-uri, putem folosi funcția de enumerare a membrilor noului PowerShell 3 pentru a le elimina.

(Invoke-WebRequest –Uri ‘https://howtogeek.com’).Links

După cum puteți vedea că veți obține o mulțime de link-uri înapoi, acesta este locul unde trebuie să vă folosiți imaginația pentru a găsi ceva unic pentru a filtra legăturile pe care le căutați. Să presupunem că dorim o listă cu toate articolele de pe prima pagină.
După cum puteți vedea că veți obține o mulțime de link-uri înapoi, acesta este locul unde trebuie să vă folosiți imaginația pentru a găsi ceva unic pentru a filtra legăturile pe care le căutați. Să presupunem că dorim o listă cu toate articolele de pe prima pagină.

((Invoke-WebRequest –Uri ‘https://howtogeek.com’).Links | Where-Object {$_.href -like “http*”} | Where class -eq “title”).Title

Un alt lucru grozav pe care îl puteți face cu noile cmdlet-uri este automatizarea descărcărilor de zi cu zi. Să ne uităm la decopertarea automată a imaginii zilei de pe site-ul web Nat Geo, pentru a face asta vom combina noile cmdlet-uri web cu Start-BitsTransfer.
Un alt lucru grozav pe care îl puteți face cu noile cmdlet-uri este automatizarea descărcărilor de zi cu zi. Să ne uităm la decopertarea automată a imaginii zilei de pe site-ul web Nat Geo, pentru a face asta vom combina noile cmdlet-uri web cu Start-BitsTransfer.

$IOTD = ((Invoke-WebRequest -Uri ‘https://photography.nationalgeographic.com/photography/photo-of-the-day/’).Links | Where innerHTML -like “*Download Wallpaper*”).href Start-BitsTransfer -Source $IOTD -Destination C:IOTD

Cam despre asta e. Aveți niște trucuri curate? Spuneți-ne în comentariile.

Recomandat: