@@ -202,6 +202,77 @@ def photo_wall(self, photos, user_id=None, group_id=None, caption=None):
202202
203203 return self .vk .photos .saveWallPhoto (** values )
204204
205+ def photo_market (self , photo , group_id , main_photo = False ,
206+ crop_x = None , crop_y = None , crop_width = None ):
207+ """ Загрузка изображений для товаров в магазине
208+
209+ :param photo: путь к изображению(ям) или file-like объект(ы)
210+ :type photo: str or list
211+
212+ :param group_id: идентификатор сообщества, для которого необходимо загрузить фотографию товара
213+ :type group_id: int
214+ :param main_photo: является ли фотография обложкой товара
215+ :type main_photo: bool
216+ :param crop_x: координата x для обрезки фотографии (верхний правый угол)
217+ :type crop_x: int
218+ :param crop_y: координата y для обрезки фотографии (верхний правый угол)
219+ :type crop_y: int
220+ :param crop_width: ширина фотографии после обрезки в px
221+ :type crop_width: int
222+ """
223+
224+ if group_id < 0 :
225+ group_id = abs (group_id )
226+
227+ values = {
228+ 'main_photo' : main_photo ,
229+ 'group_id' : group_id ,
230+ }
231+
232+ if crop_x is not None :
233+ values ['crop_x' ] = crop_x
234+ if crop_y is not None :
235+ values ['crop_y' ] = crop_y
236+ if crop_width is not None :
237+ values ['crop_width' ] = crop_width
238+
239+ response = self .vk .photos .getMarketUploadServer (** values )
240+ url = response ['upload_url' ]
241+
242+ with FilesOpener (photo ) as photos_files :
243+ response = self .http .post (url , files = photos_files )
244+
245+ values .update (response .json ())
246+
247+ return self .vk .photos .saveMarketPhoto (** values )
248+
249+ def photo_market_album (self , photo , group_id ):
250+ """ Загрузка фотографии для подборки товаров
251+
252+ :param photo: путь к изображению(ям) или file-like объект(ы)
253+ :type photo: str or list
254+
255+ :param group_id: идентификатор сообщества, для которого необходимо загрузить фотографию для подборки товаров
256+ :type group_id: int
257+ """
258+
259+ if group_id < 0 :
260+ group_id = abs (group_id )
261+
262+ values = {
263+ 'group_id' : group_id ,
264+ }
265+
266+ response = self .vk .photos .getMarketAlbumUploadServer (** values )
267+ url = response ['upload_url' ]
268+
269+ with FilesOpener (photo ) as photos_files :
270+ response = self .http .post (url , files = photos_files )
271+
272+ values .update (response .json ())
273+
274+ return self .vk .photos .saveMarketAlbumPhoto (** values )
275+
205276 def audio (self , audio , artist , title ):
206277 """ Загрузка аудио
207278
0 commit comments