Скрипт экспорта всех постов открытого/закрытого сообщества VK в HTML файл

Тема в разделе "Свободное общение", создана пользователем Nevep, 14 мар 2022.

  1. 14 мар 2022
    #1
    Nevep
    Nevep ЧКЧлен клуба
    Возможно будет полезно оргам, которые организуют складчину на зкрытое вк сообщество. Есть складчина (доступ к закрытой группе вк), которую никак не могут организовать по причине того, что по правилам складчика нужно выкачивать весь материал с закрытого сообщества вк, а постов в закрытой группе много. Один орг писал администрации с вопросом можно ли сделать сборку браузера, ответ был что нужно закачивать весь материал в облако. Для этих целей написал скрипт, который автоматически выкачает все посты с закрытой группы вк.

    Скрипт экспорта всех постов открытого/закрытого сообщества VK в HTML файл
    Инструкция
    • Создаем standalone-приложение по этой ссылке
    • На странице приложения переходим в "Настройки" и копируем ("ID приложения", "Защищённый ключ") они понадобятся нам далее
    • Формируем ссылку. Заменяем "ID_приложения" на "ID приложения" из второго пункта. И переходим по ссылке.
      Скрытая ссылка
    • Нажимаем разрешить и копируем из адресной строки "Code из адресной строки". Если адресная строка выглядит так
      Скрытая ссылка
      то записываем что "Code из адресной строки" равен "1d45312392343fhry4", он понадобится нам далее
    • Формируем ссылку. Заменяем "ID_приложения" на "ID приложения" из второго пункта, "Защищённый_ключ" на "Защищённый ключ" из второго пункта, "Code_из_адресной_строки" на "Code из адресной строки" из четвертого пункта. И переходим по ссылке
      Скрытая ссылка
    • Записываем "Access Token". Если страница выглядит так
      {"access_token":"hs735ufuf8oeknsh3601dud76d8c7dd8f88r9e08v7d6d5sfxhjd6eke8rof7vyfuw62lmc7e49ye540fh62h","expires_in":0,"user_id":165151515}
      то записываем что "Access Token" равен "hs735ufuf8oeknsh3601dud76d8c7dd8f88r9e08v7d6d5sfxhjd6eke8rof7vyfuw62lmc7e49ye540fh62h"
    • Узнаем "ID сообщества", которое хотим спарсить. Переходим в сообщество, например в это, открываем любую фотографию сообщества, и смотрим на адресную строку, если адресная строка выглядит так
      Скрытая ссылка
      то "ID сообщества" будет равно "21694623" (т.е. все что между "photo-" и "_")
    • Узнаем "Кол-во записей в сообществе".
      Либо можно подставить заранее большое число. Т.е. если в сообществе предположительно 1000 постов, можно указать 5000.
      Но если нужно узнать точное кол-во, то для этого формируем ссылку
      Заменяем "ID_сообщества" на "ID сообщества" из седьмого пункта, заменяем "Access_Token" на "Access Token" из шестого пункта
      Скрытая ссылка
    • Переходим по ссылке. Если страница выглядит так
      {"response":{"count":7369,"items":...
      то "Кол-во записей в сообществе" равно 7369
    • Заливаем две папки на хостинг: "vk_to_xml" и "xml_to_html". Берем их от сюда
    • Запускаем тестовый парсинг из сообщества vk в xml. Для этого формируем ссылку.
      Заменяем "Путь_до_папки_со_скриптом" на "Путь до папки со скриптом" куда залили на хостинг, "ID_сообщества" на "ID сообщества" из седьмого пункта, заменяем "Access_Token" на "Access Token" из шестого пункта\ Скрытая ссылка
      Если на странице отобразился контент группы, значит все сделали правильно.
    • Запускаем парсинг всех постов группы, для этого формируем ссылку.
      Заменяем "Путь_до_папки_со_скриптом" на "Путь до папки со скриптом" куда залили на хостинг, "ID_сообщества" на "ID сообщества" из седьмого пункта, заменяем "Access_Token" на "Access Token" из шестого пункта, заменяем "Кол-во_записей_в_сообществе" на "Кол-во записей в сообществе" из девятого пункта
      Скрытая ссылка
    • Лимиты. При парсинге вк отдает 100 постов за 1 запрос. Лимит 1 запрос в секунду. Т.е. сообщество с 6000 постами будет выкачиваться примерно 60 секунд
    • Когда браузер завершит загрузку, сохраняем страницу (Ctrl+S) в файл "feed.xml"
    • Заменяем скачанный файл "feed.xml" в папке "xml_to_html"
    • Открываем страницу с постами.
      Заменяем "Путь_до_папки_со_скриптом" на "Путь до папки со скриптом" куда залили на хостинг
      Скрытая ссылка
      Логин: "user"
      Пароль: "pass"
    Пример результата парсинга:
    Скрытая ссылка
    Логин: "user"
    Пароль: "pass"

    Актуальная вресия и обновления всегда будут тут: Скрытая ссылка
     
    4 пользователям это понравилось.