Skip to content

ilyachalov/powershell-livejournal

Repository files navigation

powershell-livejournal

Общение с «LiveJournal.com» (сокращенно «LJ»; по-русски «Живой Журнал», сокращенно «ЖЖ») по сети из PowerShell. Я пишу статьи по этой теме в своем блоге. Здесь собираюсь хранить скрипты, фрагменты кода (сниппеты) и полезные ссылки для работы с «LiveJournal.com» по сети из командной строки в программе-оболочке «PowerShell».

Скрипты

Пока что в папке «scripts» есть только один скрипт, который называется «Get-LiveJournal». С его помощью можно загрузить все посты указанного в первом параметре журнала к себе на компьютер. Этот скрипт лишь сохраняет тела HTTP(S)-ответов программы-сервера ЖЖ с постами журнала в текстовые файлы в «сыром» виде (то есть в том виде, в котором их возвращает ЖЖ). Иллюстрация работы скрипта:

Программа-оболочка «PowerShell» версии 7.3.3, программа-«эмулятор терминала» «Windows Terminal» версии 1.17.

Хоть полученные файлы являются текстовыми, их содержимое неудобно просматривать (и не просто неудобно, но и невозможно, так как текст поста по умолчанию закодирован процентной кодировкой, для чтения нужна расшифровка), так как ЖЖ возвращает данные постов в разбитом на множество параметров виде. Для дальнейшей работы с постами нужно создать скрипт, который преобразует полученные данные в какой-нибудь читабельный формат, например в XML или в HTML или в еще какой-либо вид. Еще можно создать отдельный скрипт, который загрузит полученные данные на какой-либо другой веб-сервис ведения блогов или сайт, например на «WordPress.com» и т.п.

Скрипт Get-LiveJournal предназначен для запуска из программы-оболочки PowerShell версии 7 или выше, в операционных системах Windows. В программе PowerShell имеются так называемые «политики выполнения», которые по умолчанию запрещают запуск скриптов. Для вре́менного снятия этих ограничений можно из окна программы PowerShell запустить еще один процесс программы PowerShell с отключенными ограничениями в рамках этого процесса (в этом случае информация о снятии ограничений не запоминается, ограничения вернутся после закрытия этого процесса) с помощью следующей команды:

pwsh -ExecutionPolicy Unrestricted

Исполняемый файл программы PowerShell называется pwsh.exe в отличие от исполняемого файла программы Windows PowerShell, который называется powershell.exe. Не перепутайте! У меня есть пост про политики выполнения.

Фрагменты кода (сниппеты)

Я работаю в операционной системе «Windows 10». Использую программу-оболочку «PowerShell» версии 7 и программу-«эмулятор терминала» «Windows Terminal» версии 1.17.

Из программы-оболочки «PowerShell» удобно пользоваться классами платформы «.NET», я часто использую эту возможность в сниппетах.

В папке «xml-examples» я собираюсь хранить примеры тел HTTP(S)-ответов в формате XML-RPC. Эти файлы неудобно полностью вставлять в пост, так как они занимают много места, но я буду оставлять в постах в своем блоге ссылки на эти файлы, чтобы читатель мог получить представление о том, как выглядит ответ в формате XML-RPC.

Полезные ссылки

Статьи:

About

Общение с «LiveJournal.com» по сети из PowerShell

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published