Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр
Герои Войны - микс стратегии и РПГ. Собери лучшую армию и победи всех врагов. В игре 7 различных режимов - как для любителей PvE, так и PvP.

Герои Войны

Стратегии, Мидкорные, Экшены

Играть

Топ прошлой недели

  • AlexKud AlexKud 38 постов
  • SergeyKorsun SergeyKorsun 12 постов
  • SupportHuaport SupportHuaport 5 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня

IT + ВКонтакте

С этим тегом используют

Программирование IT юмор Программист Юмор Работа Картинка с текстом Разработка Комментарии Скриншот Переписка Не мое Девушки Мат Все
163 поста сначала свежее
1156
kolibry07
3 года назад
IT-юмор

Когда пора сдавать проект⁠⁠

Когда пора сдавать проект Юмор, IT, ВКонтакте, Проект, Код, Комиксы
Показать полностью 1
Юмор IT ВКонтакте Проект Код Комиксы
9
2942
kolibry07
3 года назад
IT-юмор

И куда всё делось?⁠⁠

И куда всё делось?
ВКонтакте Юмор IT Программист Код Разработка Картинка с текстом
25
846
assaaassin
assaaassin
3 года назад
IT-юмор

Еженедельный патчноут⁠⁠

Еженедельный патчноут Скриншот, Жизненно, Социальные сети, Общение, IT, Переписка, Девушки, ВКонтакте
Показать полностью 1
[моё] Скриншот Жизненно Социальные сети Общение IT Переписка Девушки ВКонтакте
26
1330
kolibry07
3 года назад
IT-юмор

Когда поплыл CSS:⁠⁠

CSS Юмор IT Программист Код ВКонтакте Видео
25
3
Beeeg
3 года назад

Если хочешь остаться...⁠⁠

Если хочешь остаться...
Скриншот ВКонтакте Комментарии Социальная реклама Израиль IT Программист
6
1211
kolibry07
3 года назад
IT-юмор

Учим терминал Linux⁠⁠

Учим терминал Linux Linux, Юмор, IT, ВКонтакте, Мемы, Скриншот
Показать полностью 1
Linux Юмор IT ВКонтакте Мемы Скриншот
31
31
Terentyeff
Terentyeff
3 года назад
Исследователи космоса

Ответ на пост «А вы знали что у NASA есть API?»⁠⁠2

Прочтя этот пост, решил реализовать нечто подобное для ВК.

Приложение раз в час/два и т.д. (настраивается) постит в Вашу группу в ВК рандомную картинку и описание к ней, используя NASA API.


Дисклеймер: Я не супер программист(но очень хотелось бы), поэтому будет полно говнокода, поэтому, прошу сильно не пинать =).


Для начала, необходимо создать standalone-приложение в VK.

Ответ на пост «А вы знали что у NASA есть API?» IT, NASA, API, Разработка, Программирование, Космос, Наука, Бот, Научпоп, ВКонтакте, C++, Qt, Vkapi, Ответ на пост, Длиннопост

Оно нам понадобится для авторизации в соц.сети и получения Access Token, который позволит работать с VK API.


Мы же с вами программисты, а не (вставить любое слово), поэтому, будем писать всё вручную, а не эти ваши десигнеры использовать.


Данные(VKToken, NASAToken, ID Группы, данные об авторизации, ID группы, пользователя и настройки таймера) будем хранить в ini файле.

Для отображения таймера будем использовать QLCDNumber.


Наш хеадер главного окна получился таким:

Ответ на пост «А вы знали что у NASA есть API?» IT, NASA, API, Разработка, Программирование, Космос, Наука, Бот, Научпоп, ВКонтакте, C++, Qt, Vkapi, Ответ на пост, Длиннопост

И наш cpp файл. Если файл с настройками не найден, то программа создаст новый и поставит таймер стандартно на час.

В QLCDNumber ставим отображение до 8ми цифр.

И все наши виджеты загоняем в QGridLayout и выводим её.

Ответ на пост «А вы знали что у NASA есть API?» IT, NASA, API, Разработка, Программирование, Космос, Наука, Бот, Научпоп, ВКонтакте, C++, Qt, Vkapi, Ответ на пост, Длиннопост

Получилась вот такая штука:

Ответ на пост «А вы знали что у NASA есть API?» IT, NASA, API, Разработка, Программирование, Космос, Наука, Бот, Научпоп, ВКонтакте, C++, Qt, Vkapi, Ответ на пост, Длиннопост

Ничего сложного, правда?)


Интерфейс для настроек делаем по подобию, но, если что, ссылку на git оставлю в конц статьи.

Теперь, перейдём к самому интересному. API NASA и VK API.

У NASA есть много разного API, но мы будем работать с APOD(Astronomy Picture of the Day).

Для получения данных, необходимо отправить GET запрос на https://api.nasa.gov/planetary/apod?api_key=NASA_TOKEN


Пример: https://api.nasa.gov/planetary/apod?api_key=NASAToken&co...

В ответ мы получим json файл с таким содержимым:

Ответ на пост «А вы знали что у NASA есть API?» IT, NASA, API, Разработка, Программирование, Космос, Наука, Бот, Научпоп, ВКонтакте, C++, Qt, Vkapi, Ответ на пост, Длиннопост

Нам интересны значения: date, explanation, hdurl и copyright(Если фотография не в свободном доступе, то нужно ставить копирайт и NASA нас об этом предупреждает.)

Ответ на пост «А вы знали что у NASA есть API?» IT, NASA, API, Разработка, Программирование, Космос, Наука, Бот, Научпоп, ВКонтакте, C++, Qt, Vkapi, Ответ на пост, Длиннопост

А вот и полный список всех параметров, но нам будет интересен только "count"

Ответ на пост «А вы знали что у NASA есть API?» IT, NASA, API, Разработка, Программирование, Космос, Наука, Бот, Научпоп, ВКонтакте, C++, Qt, Vkapi, Ответ на пост, Длиннопост

Наша ссылка будет выглядеть так:

https://api.nasa.gov/planetary/apod?api_key=NASAToken&co...

NASAToken - Токен, который мы получили от NASA.


Авторизация в ВК и получение токена.

Пример авторизации в официальной документации:

Ответ на пост «А вы знали что у NASA есть API?» IT, NASA, API, Разработка, Программирование, Космос, Наука, Бот, Научпоп, ВКонтакте, C++, Qt, Vkapi, Ответ на пост, Длиннопост

Где client_id - id нашего приложения, scope - необходимые параметры доступа. В нашем случае нужно будет использовать offline, wall, groups. offline нужен для бессрочного token.


Так как ответ приходит немного кривой, требуется сделать немного косметических правок:

Ответ на пост «А вы знали что у NASA есть API?» IT, NASA, API, Разработка, Программирование, Космос, Наука, Бот, Научпоп, ВКонтакте, C++, Qt, Vkapi, Ответ на пост, Длиннопост

Затем, вытаскиваем из ссылки access_token и айди пользователя, сохраняем и переключаем авторизацию в True, затем, закрываем окно.

Пришла пора обработки JSON от NASA и загрузки данных на стену группы.


Сперва, давайте обработаем данные от НАСА.

Ответ на пост «А вы знали что у NASA есть API?» IT, NASA, API, Разработка, Программирование, Космос, Наука, Бот, Научпоп, ВКонтакте, C++, Qt, Vkapi, Ответ на пост, Длиннопост

Теперь, перейдем к загрузке полученных данных в группу. Нам понадобится метод wall.post и параметры owner_id, message, attachments, access_token.

Обратите внимание, идентификатор сообщества в параметре owner_id необходимо указывать со знаком "-" — например, owner_id=-1 соответствует идентификатору сообщества ВКонтакте API (club1)


Итоговая ссылка у нас получается:

https://api.vk.com/method/wall.post?owner_id=-" + GroupID + "&message=" + strk + "&attachments=" + attach + "&access_token=" + VKToken + "&v=5.131

Где GroupID - ай ди группы, который мы сохранили в настройках, strk - строка с копирайтом, датой, описанием, attach - ссылка на фото/видео, VKToken - наш access_token, который мы получили после авторизации.


В общем-то, всё. Мы написали программу, которая будет раз в n-часов постить в нашу группу ВК данные от NASA =).


Ссылка на Github с полным кодом: https://github.com/ac973k/NASAImageVKPost

Ссылка на VK API: https://vk.com/dev/methods

Ссылка на группу: https://vk.com/public200170365


ВК как-то очень криво вставляет изображения, поэтому, в некоторых постах изображение вставляется, а в некоторых ссылка на картинку.

Показать полностью 9
[моё] IT NASA API Разработка Программирование Космос Наука Бот Научпоп ВКонтакте C++ Qt Vkapi Ответ на пост Длиннопост
3
202
kolibry07
3 года назад
IT-юмор

Подумал Штирлиц...⁠⁠

Подумал Штирлиц... Linux, Программист, IT, Валентинка, ВКонтакте, Юмор
Показать полностью 1
Linux Программист IT Валентинка ВКонтакте Юмор
7
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии