@@ -44,9 +44,9 @@ def photo(self, photos, album_id,
4444 url = self .vk .method ('photos.getUploadServer' , values )['upload_url' ]
4545
4646 # Загружаем
47- photos_files = open_photos (photos )
47+ photos_files = open_files (photos )
4848 response = self .vk .http .post (url , files = photos_files ).json ()
49- close_photos (photos_files )
49+ close_files (photos_files )
5050
5151 # Олег Илларионов:
5252 # это не могу к сожалению просто пофиксить
@@ -75,9 +75,9 @@ def photo_messages(self, photos):
7575
7676 url = self .vk .method ('photos.getMessagesUploadServer' )['upload_url' ]
7777
78- photos_files = open_photos (photos )
78+ photos_files = open_files (photos )
7979 response = self .vk .http .post (url , files = photos_files )
80- close_photos (photos_files )
80+ close_files (photos_files )
8181
8282 response = self .vk .method ('photos.saveMessagesPhoto' , response .json ())
8383
@@ -108,9 +108,9 @@ def photo_profile(self, photo, owner_id=None, crop_x=None, crop_y=None, crop_wid
108108
109109 url = self .vk .method ('photos.getOwnerPhotoUploadServer' , values )['upload_url' ]
110110
111- photos_files = open_photos (photo , key_format = 'file' )
111+ photos_files = open_files (photo , key_format = 'file' )
112112 response = self .vk .http .post (url , data = crop_params , files = photos_files )
113- close_photos (photos_files )
113+ close_files (photos_files )
114114
115115 response = self .vk .method ('photos.saveOwnerPhoto' , response .json ())
116116
@@ -125,9 +125,9 @@ def photo_chat(self, photo, chat_id):
125125 values = {'chat_id' : chat_id }
126126 url = self .vk .method ('photos.getChatUploadServer' , values )['upload_url' ]
127127
128- photo_file = open_photos (photo )
128+ photo_file = open_files (photo )
129129 response = self .vk .http .post (url , files = photo_file )
130- close_photos (photo_file )
130+ close_files (photo_file )
131131
132132 response = self .vk .method ('messages.setChatPhoto' , response .json ())
133133
@@ -151,9 +151,9 @@ def photo_wall(self, photos, user_id=None, group_id=None):
151151 response = self .vk .method ('photos.getWallUploadServer' , values )
152152 url = response ['upload_url' ]
153153
154- photos_files = open_photos (photos )
154+ photos_files = open_files (photos )
155155 response = self .vk .http .post (url , files = photos_files )
156- close_photos (photos_files )
156+ close_files (photos_files )
157157
158158 values .update (response .json ())
159159
@@ -171,10 +171,9 @@ def audio(self, file_path, **kwargs):
171171
172172 url = self .vk .method ('audio.getUploadServer' )['upload_url' ]
173173
174- filetype = file_path .split ('.' )[- 1 ]
175- audio_file = [(('file' , ( 'file.' + filetype , open (file_path , 'rb' ))))]
176-
177- response = self .vk .http .post (url , files = audio_file ).json ()
174+ file = open_files (file_path , key_format = 'file' )
175+ response = self .vk .http .post (url , files = file ).json ()
176+ close_files (file )
178177
179178 response .update (kwargs )
180179
@@ -207,21 +206,23 @@ def document(self, file_path, title=None, tags=None, group_id=None):
207206 return response
208207
209208
210- def open_photos (photos_paths , key_format = 'file{}' ):
211- if not isinstance (photos_paths , list ):
212- photos_paths = [photos_paths ]
209+ def open_files (paths , key_format = 'file{}' ):
210+ if not isinstance (paths , list ):
211+ paths = [paths ]
212+
213+ files = []
213214
214- photos = []
215+ for x , filename in enumerate (paths ):
216+ file = open (filename , 'rb' )
215217
216- for x , filename in enumerate (photos_paths ):
217- filetype = filename .split ('.' )[- 1 ]
218- photos .append (
219- (key_format .format (x ), ('pic.' + filetype , open (filename , 'rb' )))
218+ ext = filename .split ('.' )[- 1 ]
219+ files .append (
220+ (key_format .format (x ), ('file{}.{}' .format (x , ext ), file ))
220221 )
221222
222- return photos
223+ return files
223224
224225
225- def close_photos ( photos ):
226- for photo in photos :
227- photo [1 ][1 ].close ()
226+ def close_files ( files ):
227+ for file in files :
228+ file [1 ][1 ].close ()
0 commit comments