Парсим сайты и веб-страницы с помощью Powershell / Invoke-WebRequest / getElementsByTagName и боремся с производительностью

Иногда бывает нужно отпарсить какой-нибудь сайт или большую веб-страницу. Google предлагает множество программ и целых сложных комплексов для решения этой задачи, но я хочу показать, как это достаточно просто можно делать в Powershell.

В Powershell есть специальный коммандлет Invoke-WebRequest, который собственно и разбирает HTML-страницу на тэги и содержимое. На выходе этот коммандлет выдает объект страницы с полем ParsedHtml. К этому полю можно применять методы по выборке нужных данных.

Допустим, что вам нужно выбрать все ссылки на странице. Вот как это работает.

  • Просмотров: 8841

Установка ESXi завершается с ошибкой "partedUtil failed with message: Error: The primary GPT table states that the backup GPT is located beyond the end of disk"

Иногда установка VmWare ESXi заканчивается (между 5% и 8%) с такой ошибкой:

"partedUtil failed with message: Error: The primary GPT table states that the backup GPT is located beyond the end of disk. This may happen if the disk has shrunk or partition table is corrupted. ... Error: Can't have a partition outside the disk! Unable to read partition table for device..."

  • Просмотров: 6259

Простые способы поднять производительность серверов HP Proliant, о которых вы могли не знать

Сейчас очень много внимания уделяется экологии, в том числе производителями серверов. Hewlett Packard - не исключение. В настройках из серверов есть параметры, которые влияют на энергопотребление железа. И, естественно, эти же параметры влияют на производительность. Возможно вы могли не знать, но эти установленные по-умолчанию параметры, существенно снижают скорость работы памяти и процессора.

Я покажу вам, где эти настройки находятся. Установка максимальных значений для этих параметров в нашем случае помогли существенно увеличить скорость работы VmWare ESXi хостов и добиться более короткого отклика для SAP-систем. Вообще, эти рекомендации взяты из SAP-нот.

  • Просмотров: 5561

Массовое удаленное изменение DNS-серверов в настройках сетевой карты в Windows

При апгрейде контроллеров домена или их удалении\добавлении, всегда появляется необходимость изменить DNS-сервера в настройках сетевых интерфейсов. Там, где сетевые настройки выдаются через DHCP - проблем нет. А там, где все настроено вручную, придется заходить на каждый сервер и менять руками. Это долго и неудобно.

  • Просмотров: 5031

Как разрешить root-пользователю логиниться через SSH в Debian Jessie

Сразу после чистой установки Debian Jessie Linux, вы установите SSH-сервер и потом столкнетесь с проблемой, когда попробуете залогиниться через SSH с помощью root-учетной записи.

$ ssh [email protected]
[email protected]'s password: 
Permission denied, please try again.
  • Просмотров: 5800

Ошибка Add-PSSnapin : The Windows PowerShell snap-in 'VeeamPSSnapIn' is not installed при запуске Veeam Powershell Snapin

Иногда после нормальной установки Powershell Snapin для Veeam, попытка загрузить снапин в консоль Powershell заканчивается ошибкой: Add-PSSnapin : The Windows PowerShell snap-in 'VeeamPSSnapIn' is not installed.

Эта проблема возникает из-за того, что модуль по какой-то причине не регистрируется в Powershell. На официальных форумах Veeam предлагается множество решений типа переустановки Veeam или перезагрузок-переустановок Powershell-модуля. В моем случае решение было найдено такое:

  • Просмотров: 4623

Скрипты для быстрого обновления адресной книги в Lync 2010/2013

Как известно, в Lync есть своя адресная книга, которая скачивается клиентами. По умолчанию, закачка или обновление адресной книги в клиентской программе происходит в первые 60 минут после запуска программы. В целом, в нашей компании это оказалось плохим решением, точно так же, как и тот факт, что измененные в Active Directory пользовательские данные попадают на конечные компьютеры с достаточно большой задержкой.

Последствия такого поведения:

  • Просмотров: 8037

Страница 5 из 14