Как извлечь ссылки с любой веб-страницы с помощью PowerShell

PowerShell 3 имеет много новых функций, в том числе некоторые мощные новые функции, связанные с Интернетом. Они значительно упрощают автоматизацию Интернета, и сегодня мы собираемся показать вам, как вы можете извлечь каждую ссылку с веб-страницы и, при желании, загрузить ресурс.

Очистка сети с помощью PowerShell

Существуют два новых командлета, которые упрощают автоматизацию Интернета: Invoke-WebRequest, облегчающий анализ читабельного контента, и Invoke-RestMethod, облегчающий чтение машиночитаемого контента. Поскольку ссылки являются частью HTML-страницы, они являются частью удобочитаемого материала. Все, что вам нужно сделать, чтобы получить веб-страницу, это использовать Invoke-WebRequest и дать ему URL.

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

Если вы прокрутите вниз, то увидите, что ответ имеет свойство links, мы можем использовать новую функцию перечисления членов PowerShell 3, чтобы отфильтровать их.

(Invoke-WebRequest –Uri ‘http://howtogeek.com’). Ссылки

Как вы видите, вы получаете множество ссылок назад, и здесь вам нужно использовать свое воображение, чтобы найти что-то уникальное для фильтрации ссылок, которые вы ищете. Предположим, нам нужен список всех статей на первой странице.

((Invoke-WebRequest –Uri ‘http://howtogeek.com’) .Links | Where-Object {$ _. Href-like «http *»} | Где class -eq «title»). Заголовок

Еще одна замечательная вещь, которую вы можете сделать с новыми командлетами, это автоматизировать ежедневные загрузки. Давайте рассмотрим автоматическую очистку изображения выходного дня на веб-сайте Nat Geo, для этого мы объединим новые веб-командлеты с Start-BitsTransfer.

$ IOTD = ((Invoke-WebRequest -Uri ‘http://photography.nationalgeographic.com/photography/photo-of-the-day/’).Links | Где innerHTML -подобно «* Скачать обои *»). Href < бр />
Start-BitsTransfer -Source $ IOTD -Назначение C: \ IOTD \

Это все, что нужно сделать. Есть какие-нибудь изящные трюки? Дайте нам знать об этом в комментариях.

Оцените статью
TutoryBird.Ru
Добавить комментарий