Как загрузить пнг в вк
Перейти к содержимому

Как загрузить пнг в вк

  • автор:

как в контакте загрузить в комментарии файл png

вот так чтоб было в коментах

Лучший ответ

Для начала нужно добавить файл в «Документы»

После добавления файла в «Документы» , Вы будете видеть его так:

После того, как загрузили файл, идёте на свою страницу, наводите курсор
на «Прикрепить» , нажимаете «Документ»

В открывшемся окне выбираете загруженный ранее документ и нажимаете «Прикрепить»

После того, как прикрепили документ, по желанию пишете текст, и нажимаете «Отправить»

Затем, после отправки файла на стену, он будет выглядеть так:

____________________________________________________________

Если на Вашей странице нет раздела «Документы» , включите его в настройках:

Остальные ответы

Как загрузить APNG как обычную фотку в вк?

Скорее всего это прям лютые какие то манипуляции с vk api
Вот что я заметил:
Большинство анимированных фото имеют одну из сторон 640 пикселей или меньше
Если открыть фото в новой вкладке, ты увидишь что отрыл .jpg файл, но если попытаться скачать, тебе качает .png файл

Есть предположение что вк генерирует превью ссылку для гифок, и именно эту ссылку они научились доставать. Дело в том что чтобы получить такую аву надо загрузить гифку в бота вк, и он выдаст тебе фото с анимацией. Но если загружать новую гиф которой в вк ещё никогда небыло, бот пишет что вк ещё не сгенерировал превью файл для гифки и мы должны попробовать позже.

alwayscolorblind @alwayscolorblind Автор вопроса

xuiw, хм, интересно, я когда пробовал грузить свои картинки, заметил, что они конвертируются в .jpg, думал, что отсюда и надо копать

Решения вопроса 2

Информация с паблика где распространяли это дело:

Способ был пофикшен ВКшниками и больше не актуален, поэтому личный просить больше нет смысла. Те изображения, которые уже были загружены, скорее всего, останутся.

Ещё есть информация, что очень известные страницы с гиф-авами будут банить (за достоверность не отвечаю)

А вот и тот самый способ залива фото самостоятельно (опять же, уже пофикшен):
Человек перехватил функцию загрузки фото через сайт (не вк апи!), сделал такую же махинацию с большим размером APNG, ссылка на пост запрос ->
https://pu.vk.com/gu/photo/v2/bulk_upload
После ему дает ответ с ссылкой, на pp.userapi.com/раздел/документ.png
Он кидает её в чат, дополнительно указав в конце (.png?size=500×500) только тогда она во вложениях будет анимирована, вот почему бот багосов кидал ссылку в чат

Ответ написан более двух лет назад
Комментировать
Нравится 5 Комментировать

Появилась информация, что пофиксили всё это.

Появились некоторые сведения о баге в комментариях под постом выше.

Ответ написан более двух лет назад
Комментировать
Нравится 2 Комментировать
Ответы на вопрос 5

krax1337

личинка Девопса

Провел несколько экспериментов.

Если заметим, то такие картинки выглядит, как .jpg , а когда пытаемся скачать пишет .png .

Попробуем повторить данный результат.

1) Берем .gif файл, конвертируем в APNG (https://ezgif.com/gif-to-apng)
2) Переименовываем .png в .jpg
3) Кидаем себе в ЛС, как файл
4) Открываем картинку, смотрим в src

5) Переходим по src и получаем похожий результат

Осталось только понять, как положить это в альбом с работающим превью.

Большинство анимированных фото имеют одну из сторон 640 пикселей или меньше

Насчет этого не уверен, отправил боту картинку .gif 747×409, в ответ бот прислал картинку с тем же разрешением. Единственное он как-то сильно исказил цвета, ну и добавил свою вотермарку, но это возможно связанно с перерендером GIF.

Как загрузить картинку в личное сообщение в vk (бот)

В python был сгенерирована картинка. Точнее был сделан график. Нужно этот график отправить ботом в личном сообщении в vk. Как это сделать, не скачивая картинки на компьютер?

Отслеживать
задан 8 июн 2019 в 11:38
Дарья Высоцкая Дарья Высоцкая
11 5 5 бронзовых знаков

Уточните, пожалуйста, какой тип авторизации и какие ключи Вы используете для работы с API. Или же детализируйте вопрос, чтобы можно было привести конкретную часть кода, а не решение целиком.

8 июн 2019 в 11:50

я получаю график plt. В документации Vk написано что нужна ссылка на картинку. Я не хочу скачивать картинку на комп, а сразу передавать её в скрипт

8 июн 2019 в 12:14

В любом случае Вам придётся сохранить Ваш график в файл ( plt.savefig(‘file.png’) ) и загрузить его на сервер ВК. После загрузки на сервер, Вы можете удалять файл с компьютера.

8 июн 2019 в 12:17

2 ответа 2

Сортировка: Сброс на вариант по умолчанию

io.BytesIO — позволяет работать с потоком байт в памяти как с объектом типа file в Python:

import io # . buf = io.BytesIO() plt.savefig(buf, format='png') 

Отслеживать
ответ дан 8 июн 2019 в 12:55
MaxU — stand with Ukraine MaxU — stand with Ukraine
149k 12 12 золотых знаков 59 59 серебряных знаков 133 133 бронзовых знака

Я когда-то делал отправку скриншота в личку. Я думаю если ты сохранишь файл то сможешь отправить

id — это кому отправить
my_id — твой id

data = vkapi.photos.getMessagesUploadServer(peer_id = id, v = '5.85') url = data['upload_url'] img = r = requests.post(url, files = img) r = json.loads(r.text) server = r['server'] photo = r['photo'] hash = r['hash'] photo_id = vkapi.photos.saveMessagesPhoto(server = server, photo = photo, hash = hash, v = '5.85') photo_id = photo_id[0]['id'] vkapi.messages.send(v = '5.85', peer_id = id, attachment = 'photo' + str(my_id) + '_' + str(photo_id)) 

Единственная проблема может возникнуть в том, что API могли обновить, а я прогу не обновлял.

Как загрузить изображение в VK с помощью JavaScript?

Из браузера напрямую в ВК не получится. Из nodejs или Electron’а – запросто.

Ключевой момент здесь – ответ сервера ВК на загрузку к ним файла картинки. Они отвечают без CORS-заголовков и браузер считает такой ответ небезопасным, делая его недоступным JS-скриптам.

3e0bb81eb1264aa5995460f8930a3834.png

Загрузка файлов в ВК хорошо описана в их документации. Три шага:

  1. получить адрес сервера, принимающего картинку
  2. отправить туда картинку методом POST и получить ответ
  3. используя «ответ» сохранить фото в нужный альбом или на стену.

Всё это легко делается и на JavaScript, вот только политика безопасности браузеров не позволяет получать ответ с чужого сервера, если тот не сопровождается специальными HTTP-заголовками. А ВК их не даёт из каких-то своих соображений «безопасности», как мне ответила их тех.поддержка:

Поэтому можно реализовать загрузку только через свой сервер.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *