{
    "version": "https:\/\/jsonfeed.org\/version\/1.1",
    "title": "Лайвлупинг, медиапродакшн и все эти ваши компьютеры: заметки с тегом ВКачатор",
    "_rss_description": "ВКачатор — скрипт для получения максимально локальной копии своего профиля VK",
    "_rss_language": "ru",
    "_itunes_email": "",
    "_itunes_categories_xml": "",
    "_itunes_image": "",
    "_itunes_explicit": "",
    "home_page_url": "https:\/\/www.batishchev.ru\/blog\/tags\/vkachator\/",
    "feed_url": "https:\/\/www.batishchev.ru\/blog\/tags\/vkachator\/json\/",
    "icon": "https:\/\/www.batishchev.ru\/blog\/pictures\/userpic\/userpic@2x.jpg?1604346823",
    "authors": [
        {
            "name": "Алексей Батищев",
            "url": "https:\/\/www.batishchev.ru\/blog\/",
            "avatar": "https:\/\/www.batishchev.ru\/blog\/pictures\/userpic\/userpic@2x.jpg?1604346823"
        }
    ],
    "items": [
        {
            "id": "3793",
            "url": "https:\/\/www.batishchev.ru\/blog\/all\/novy-reliz-vkachatora\/",
            "title": "Новый релиз ВКачатора",
            "content_html": "<p>Спустя <a href=\"https:\/\/batishchev.ru\/blog\/all\/zabrat-svoyo-iz-oblakov-obnovlenie-vkachatora\/\">три года<\/a> подготовил и выпустил новый релиз ВКачатора — допилил много мелочей, до которых в прошлый раз не доходили руки, благо теперь Клод позволяет реализовывать идеи быстро и технологично. ЧуднО видеть код, на который я в своё время потратил уйму времени, и то как играючи его сейчас колбасит ИИшка<\/p>\n<div class=\"e2-text-picture\">\n<img src=\"https:\/\/www.batishchev.ru\/blog\/pictures\/2026-05-18-image-8.png\" width=\"914.75142624287\" height=\"800\" alt=\"\" \/>\n<div class=\"e2-text-caption\">Приятные мелочи — аватары отправителей и бейджик «processed» на обработанных страницах<\/div>\n<\/div>\n<p>Формат выгрузки за прошедшие годы не поменялся, а вот содержимое профиля заметно поредело: уж не знаю с чем связано, может самизнаетечто повлияло, но много видосов и фоток теперь удалены или скрыты авторами. Ну, такие времена.<\/p>\n<p>При разработке в паре с Клодом пришлось преодолеть новые технологические сложности — оказалось что питоново-юниксовые по происхождению нейросети нативно плохо могут в редактирование powershell-скриптов с кириллицей под виндой. Но в итоге решение придумалось, и работа по впиливанию фич заняла пару вечеров ленивой фоновой постановки задач и контроля результатов. В основном время потратилось на скачивание медиа, ну заодно и свой дамп обновил на актуальный.<\/p>\n<p>Публичную репу решил пересоздать, но адрес оставил прежний: <a href=\"https:\/\/github.com\/alexbatishchev\/kenk-vk-enricher\">https:\/\/github.com\/alexbatishchev\/kenk-vk-enricher<\/a><\/p>\n<p>КЭНК! Слава роботам!<\/p>\n",
            "summary": "Спустя три года подготовил и выпустил новый релиз ВКачатора — допилил много мелочей, до которых в прошлый раз не доходили руки, благо теперь Клод позволяет реализовывать идеи быстро и технологично",
            "date_published": "2026-05-22T20:03:01+03:00",
            "date_modified": "2026-05-22T20:02:55+03:00",
            "tags": [
                "PowerShell",
                "TG",
                "ВКачатор",
                "Забрать своё из облаков",
                "ИИ",
                "КЭНК"
            ],
            "image": "https:\/\/www.batishchev.ru\/blog\/pictures\/2026-05-18-image-8.png",
            "_date_published_rfc2822": "Fri, 22 May 2026 20:03:01 +0300",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "3793",
            "_e2_data": {
                "is_favourite": false,
                "links_required": [],
                "og_images": [
                    "https:\/\/www.batishchev.ru\/blog\/pictures\/2026-05-18-image-8.png"
                ]
            }
        },
        {
            "id": "987",
            "url": "https:\/\/www.batishchev.ru\/blog\/all\/zabrat-svoyo-iz-oblakov-obnovlenie-vkachatora\/",
            "title": "Забрать своё из облаков: обновление вКачатора",
            "content_html": "<p>Допилил небольшое, но важное дополнение для <a href=\"https:\/\/batishchev.ru\/blog\/all\/zabrat-svoyo-iz-oblakov-kenk-vk-enricher\/\">скрипта обогащения дампов профиля ВКонтакте<\/a>. Эксплуатация предыдущей версии выявила существенный недостаток: видео с YouTube, импортированные в ВК, в разных разделах сайта фигурируют с разными ID (и разными URL). Выходит странненькое — по этим разным ссылкам открывается один и тот же объект (страницца) ВК, с теми же комментариями, лайками, и прочими атрибутами соцсети, и конечно же встроенный в объект ролик YouTube там тоже один и тот же, но ссылки на этот объект разные. И например, добавленное на стену видео, и то же видео, посланное в диалоге, будут иметь разные адреса. Поэтому старая версия скачивала, и складывала в папку видео несколько раз, что расходовало лишнее место (а у меня в избранные как-то попала даже девятичасовая прямая трансляция выхода в открытый космос с МКС).<\/p>\n<p>Идеально было бы научить скрипт сразу узнавать такие дубликаты по адресам, и не скачивать повторы вовсе, но как это сделать я придумать не смог. Зато можно скачать через yt-dlp оригинал с ютуба, и по его метаданным распознать дубль, сравнив с метаданными уже скачанных видео. Так и поступил — теперь скрипт сохраняет в простой json информацию по всем уже скачанным файлам, и при закачке дубля не сохраняет его на диск, заменяя ссылки в дампе на уже скачанный экземпляр. На моем дампе это значительно сократило объём выгрузки.<\/p>\n<p>Обновлённая версия уже на гитхабе: <a href=\"https:\/\/github.com\/alexbatishchev\/kenk-vk-enricher\">https:\/\/github.com\/alexbatishchev\/kenk-vk-enricher<\/a><\/p>\n",
            "summary": "Допилил небольшое, но важное дополнение для скрипта обогащения дампов профиля ВКонтакте. Эксплуатация предыдущей версии выявила существенный недостаток",
            "date_published": "2023-06-01T14:52:34+03:00",
            "date_modified": "2023-06-07T23:38:25+03:00",
            "tags": [
                "PowerShell",
                "ВКачатор",
                "Забрать своё из облаков",
                "КЭНК"
            ],
            "_date_published_rfc2822": "Thu, 01 Jun 2023 14:52:34 +0300",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "987",
            "_e2_data": {
                "is_favourite": false,
                "links_required": [],
                "og_images": []
            }
        },
        {
            "id": "979",
            "url": "https:\/\/www.batishchev.ru\/blog\/all\/zabrat-svoyo-iz-oblakov-kenk-vk-enricher-1-4\/",
            "title": "Забрать своё из облаков: kenk-vk-enricher 1.4",
            "content_html": "<p>Допилил скрипт <a href=\"https:\/\/batishchev.ru\/blog\/all\/zabrat-svoyo-iz-oblakov-kenk-vk-enricher\/\">обогащения дампа Вконтакте<\/a>. Теперь скрипт качает видео в разделах Видеозаписи, Стена и Сообщения — закачка идет через  <a href=\"https:\/\/github.com\/yt-dlp\/yt-dlp\">yt-dlp<\/a>, перед использованием желательно обновить его до свежей версии, и залогиниться в ВК в одном из бразуеров на машине, тогда yt-dlp сможет использовать куки и больше видео будет доступно для скачивания. Также скачиваются аттачменты типа «файл» на стене и в сообщениях (те, что доступны по прямым ссылкам).<\/p>\n<p>Сейчас актуальной версией скрипта мой личный профиль выкачивается на почти 200 гб, сказываются видео файлы в переписке и на стене — часто репостились интересные чужие видосы, и всё вместе занимает прилично места. Ну да больше-не меньше.<\/p>\n<p>Скрипт на гитхабе: <a href=\"https:\/\/github.com\/alexbatishchev\/kenk-vk-enricher\"><a href=\"https:\/\/github.com\/alexbatishchev\/kenk-vk-enricher\">https:\/\/github.com\/alexbatishchev\/kenk-vk-enricher<\/a><\/a><\/p>\n<p>Слава роботам!<\/p>\n",
            "summary": "Допилил скрипт обогащения дампа Вконтакте. Теперь скрипт качает видео в разделах Видеозаписи, Стена и Сообщения — закачка идет через yt-dlp, перед использованием желательно обновить его до свежей версии",
            "date_published": "2023-01-11T23:19:20+03:00",
            "date_modified": "2023-05-30T19:05:41+03:00",
            "tags": [
                "PowerShell",
                "ВКачатор",
                "Забрать своё из облаков",
                "КЭНК"
            ],
            "_date_published_rfc2822": "Wed, 11 Jan 2023 23:19:20 +0300",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "979",
            "_e2_data": {
                "is_favourite": false,
                "links_required": [],
                "og_images": []
            }
        },
        {
            "id": "975",
            "url": "https:\/\/www.batishchev.ru\/blog\/all\/zabrat-svoyo-iz-oblakov-kenk-vk-enricher\/",
            "title": "Забрать своё из облаков:  kenk-vk-enricher",
            "content_html": "<p>Причесал и опубликовал <a href=\"https:\/\/github.com\/alexbatishchev\/kenk-vk-enricher\">скрипт<\/a>, докачивающий в дамп официальной выгрузки из ВКонтакте картинки в переписку (сообщения) и фотоальбомы. Фотки выкачиваются и складываются заодно внутрь дампа в папки с именами, соответствующими оригинальным альбомам, а если они были опубликованы с подписью (как например часто было при параллельной публикации в ИГ) — подпись сохраняется в отдельный текстовой файл рядом.<\/p>\n<div class=\"e2-text-picture\">\n<img src=\"https:\/\/www.batishchev.ru\/blog\/pictures\/kenk-vk-enricher.png\" width=\"971\" height=\"631\" alt=\"\" \/>\n<\/div>\n<p>В дампе переписке  все файлы даются прямыми ссылками. А вот в дампе стены картинки прописаны ссылками вида <a href=\"https:\/\/vk.com\/photoXXXXXXXXX_XXXXXXXXX\">https:\/\/vk.com\/photoXXXXXXXXX_XXXXXXXXX<\/a> — но тут был придуман хитрый ход, немного исправляющий ситуацию. Так как среди фотоальбомов есть «Фотографии на моей стене», то если сдампить их и из кода страницы выдернуть и прямые ссылки на файлы, и ссылки photoXXXXXXXXX_XXXXXXXXX (которые там есть), то можно закешировать это соответствие и подставить потом известные картинки в код выгрузки стены. К сожалению, так можно обойти только картинки, и только картинки ваши — репосты от других пользователей или групп так и останутся со ссылками на данные в серверах ВК. Как до них добраться без URL оригинальных файлов непонятно — с парсерами картинок ВК в интернете такая же беда как и с видео. Хотя жаль, стену со своими публикациями хотелось бы содрать в максимально полном виде, включая и репосты.<\/p>\n<p>За недолгое время с прошлой публикации yt-dlp успел разучиться качать видео из вк, и вновь научился этому в свежем апдейте — похоже что война апишников с реверс-инженерами идёт денно и нощно. С учетом этого, выкачку видео пока думаю не реализовывать.<\/p>\n<p>Забавное наблюдение — в дампе стены есть уже удалённые вами сообщения (с пометкой «Запись удалена»). Так приятно что заботливые товарищи всё хранят даже после удаления (евпочя).<\/p>\n<div class=\"e2-text-picture\">\n<img src=\"https:\/\/www.batishchev.ru\/blog\/pictures\/kenk-vk-enricher2.png\" width=\"645\" height=\"468\" alt=\"\" \/>\n<\/div>\n<p>КЭНК! Слава роботам!<\/p>\n",
            "summary": "Причесал и опубликовал скрипт, докачивающий в дамп официальной выгрузки из ВКонтакте картинки в переписку",
            "date_published": "2023-01-05T22:34:03+03:00",
            "date_modified": "2023-05-30T19:05:28+03:00",
            "tags": [
                "PowerShell",
                "ВКачатор",
                "Забрать своё из облаков",
                "КЭНК"
            ],
            "image": "https:\/\/www.batishchev.ru\/blog\/pictures\/kenk-vk-enricher.png",
            "_date_published_rfc2822": "Thu, 05 Jan 2023 22:34:03 +0300",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "975",
            "_e2_data": {
                "is_favourite": false,
                "links_required": [],
                "og_images": [
                    "https:\/\/www.batishchev.ru\/blog\/pictures\/kenk-vk-enricher.png",
                    "https:\/\/www.batishchev.ru\/blog\/pictures\/kenk-vk-enricher2.png"
                ]
            }
        },
        {
            "id": "973",
            "url": "https:\/\/www.batishchev.ru\/blog\/all\/zabrat-svoyo-iz-oblakov-vkontakte\/",
            "title": "Забрать своё из облаков: вконтакте",
            "content_html": "<p>Как я писал в <a href=\"https:\/\/batishchev.ru\/blog\/all\/zabrat-svoyo-iz-oblakov\/\">одной из первых заметок цикла<\/a>, ВК не позволяет полноценно выгрузить из себя пользовательские данные. Запросив выгрузку на странице <a href=\"https:\/\/vk.com\/data_protection,\">https:\/\/vk.com\/data_protection,<\/a> через некоторое время пользователь получает относительно небольшой zip архив, внутри которого расположен набор слинкованных html страниц без медиафайлов. Сами медиаматериалы (изображения и видео) в архив не попадают — указаны только либо ссылки на исходные объекты в ВК, либо фото (или превью видео), которые подгружаются с серверов ВК в интернете. Интересно, что при этом другого динамического или внешнего контента нет — css уже положены в папку, а из javascript внутри страниц только несколько обработчиков onclick без внешней загрузки.<\/p>\n<p>Я изучил сторонние парсеры, которые опубликованы в интернете. Всё найденное страдает схожим набором недостатков. Нужно давать доступ к странице (или открыть её для всех, чего я делать не хочу). А ещё все подобные инструменты быстро устаревают в условиях постоянно меняющихся верстки сайта и механизмов авторизации — например, чудо-комбайн для загрузки видео  <a href=\"https:\/\/github.com\/yt-dlp\/yt-dlp\">yt-dlp<\/a> в этом году несколько месяцев не мог качать видео из ВК после очередной смены алгоритмов сайта.<\/p>\n<p>В общем, спустя некоторое время поисков я решил пристальней взглянуть на выгрузку, выдаваемую ВК, и обнаружил что фотографии в коде выгрузки даются прямыми ссылками на полноразмерные источники, которые ещё и работают без авторизации на сайте. А значит, пройдя по коду страниц, можно выкачать исходные фотки, и дальше сделать с этим что-то.<\/p>\n<p>Пока я придумал два варианта — сгрузить фотографии на диск в каталог внутри оригинальной выгрузки и поменять ссылки в тексте страниц (фотоальбомы, чаты, стена) так, чтобы всё открывалось локально. Второй возможный вариант — сгрузить фотографии из фотоальбомов в файловую систему отдельно, повторив папками структуру исходных фотоальбомов на сайте. Первый вариант в черновом виде уже реализовал быстро на powershell, но для публикации его нужно причесать.<\/p>\n<p>Также, пока работает yt-dlp, можно попробовать выкачать им видео, и заменить ссылки в дампе на скачанные файлы (это будет посложнее, будет завязано на работоспособность yt-dlp, и точно не позволит скачать часть видео без авторизации yt-dlp в ВК)<\/p>\n<p>Думаю как быть дальше.<\/p>\n",
            "summary": "Как я писал в одной из первых заметок цикла, ВК не позволяет полноценно выгрузить из себя пользовательские данные",
            "date_published": "2022-12-27T02:44:24+03:00",
            "date_modified": "2024-01-29T01:42:17+03:00",
            "tags": [
                "ВКачатор",
                "все эти ваши компьютеры",
                "Забрать своё из облаков"
            ],
            "_date_published_rfc2822": "Tue, 27 Dec 2022 02:44:24 +0300",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "973",
            "_e2_data": {
                "is_favourite": false,
                "links_required": [],
                "og_images": []
            }
        }
    ],
    "_e2_version": 4199,
    "_e2_ua_string": "Aegea 11.5 (v4199)"
}