Skip to content

Commit 3a7864b

Browse files
committed
Upload photo on wall.
1 parent 74df7ab commit 3a7864b

1 file changed

Lines changed: 33 additions & 23 deletions

File tree

vk_api/vk_upload.py

Lines changed: 33 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -14,20 +14,15 @@ def __init__(self, vk):
1414
self.vk = vk
1515
# https://vk.com/dev/upload_files
1616

17-
def photo(self, photos, album_id=None, group_id=None):
17+
def photo(self, photos, album_id, group_id=None):
1818
""" Загрузка изображений в альбом пользователя
1919
20-
photos = ['photo1.jpg', 'img.png']
21-
= 'screen.png'
22-
Максимум 5 фотографий
23-
24-
album_id
20+
:param photos: список путей к изображениям, либо путь к изображению
21+
:param album_id: идентификатор альбома
22+
:param group_id: идентификатор сообщества (если загрузка идет в группу)
2523
"""
2624

27-
if not (album_id and photos):
28-
return False
29-
30-
if type(photos) == str: # upload.photo('photo.jpg', ...)
25+
if type(photos) == str:
3126
photos = [photos]
3227

3328
values = {
@@ -54,38 +49,53 @@ def photo(self, photos, album_id=None, group_id=None):
5449

5550
return response
5651

57-
def photoMessages(self, photos, group_id=None):
52+
def photo_messages(self, photos):
5853
""" Загрузка изображений в сообщения
5954
60-
photos = ['photo1.jpg', 'img.png']
61-
= 'screen.png'
62-
Максимум 7(?) фотографий
55+
:param photos: список путей к изображениям, либо путь к изображению
6356
"""
6457

65-
if not photos:
66-
return False
67-
68-
if type(photos) == str: # upload.photo('photo.jpg', ...)
58+
if type(photos) == str:
6959
photos = [photos]
7060

7161
values = {}
72-
if group_id:
73-
values.update({'group_id': group_id})
7462

75-
# Получаем ссылку для загрузки
7663
url = self.vk.method('photos.getMessagesUploadServer', values)
7764
url = url['upload_url']
7865

79-
# Загружаем
8066
photos_files = openPhotos(photos)
8167
response = self.vk.http.post(url, files=photos_files)
8268
closePhotos(photos_files)
8369

84-
# Сохраняем фото в альбоме
8570
response = self.vk.method('photos.saveMessagesPhoto', response.json())
8671

8772
return response
8873

74+
def photo_wall(self, photos, group_id=None):
75+
""" Загрузка изображений на стену пользователя или в группу
76+
77+
:param photos: список путей к изображениям, либо путь к изображению
78+
:param group_id: идентификатор сообщества (если загрузка идет в группу)
79+
"""
80+
81+
if type(photos) == str:
82+
photos = [photos]
83+
84+
values = {}
85+
if group_id:
86+
values.update({'group_id': group_id})
87+
88+
response = self.vk.method('photos.getWallUploadServer', values)
89+
url = response['upload_url']
90+
91+
photos_files = openPhotos(photos)
92+
response = self.vk.http.post(url, files=photos_files)
93+
closePhotos(photos_files)
94+
95+
response = self.vk.method('photos.saveWallPhoto', response.json())
96+
97+
return response
98+
8999

90100
def openPhotos(photos_paths):
91101
photos = {}

0 commit comments

Comments
 (0)