Jak extrahovat odkazy z libovolné webové stránky pomocí PowerShell
PowerShell 3 má spoustu nových funkcí, včetně některých nových výkonných webových funkcí. Dramaticky zjednodušují automatizaci webu a dnes vám ukážeme, jak můžete z webové stránky extrahovat jednotlivé odkazy a volitelně si je můžete stáhnout, pokud si přejete.
Škrábání webu pomocí programu PowerShell
Existují dvě nové rutiny, které zjednodušují automatizaci webu, Invoke-WebRequest, který usnadňuje analýzu obsahu čitelného člověka a Invoke-RestMethod, což usnadňuje čitelnost obsahu. Vzhledem k tomu, že odkazy jsou součástí HTML stránky, jsou součástí lidsky čitelných věcí. Jediné, co musíte udělat pro získání webové stránky, je použít Invoke-WebRequest a dát jej adresu URL.
Invoke-WebRequest -Uri 'http://howtogeek.com'
Pokud posouváte dolů, uvidíte, že odpověď má vlastnost propojení, můžeme použít funkci výčtu nových členů PowerShell 3 pro filtrování těchto.
(Invoke-WebRequest -Uri 'http://howtogeek.com'). Spojuje se
Jak můžete vidět, že získáte spoustu odkazů zpět, je to místo, kde musíte použít vaši fantazii, abyste našli něco jedinečného pro odfiltrování odkazů, které hledáte. Předpokládejme, že chceme mít seznam všech článků na titulní stránce.
((Invoke-WebRequest -Uri 'http://howtogeek.com') .Links | Kde-objekt $ _. Href -like "http *" |
Další skvělá věc, kterou můžete s novými cmdlety dělat, je automatizovat každodenní stahování. Umožní se podívat na automatické oškrábání obrazu dne z webových stránek Nat Geo, k tomu budeme kombinovat nové webové skripty s Start-BitsTransfer.
$ IOTD = ((Invoke-WebRequest -Uri 'http://photography.nationalgeographic.com/photography/photo-of-theday/').Links | Kde innerHTML -like "* Stáhnout tapetu *"). Href
Start-BitsTransfer -Source $ IOTD -Zakazování C: \ IOTD \
To je vše, co je k tomu. Máte nějaké čisté triky? Dejte nám vědět v komentářích.