File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -304,7 +304,7 @@ def _render_screenshots(self):
304304 return ffmpeg .take_screenshots (ns )
305305
306306 def _finalize_screenshots (self ):
307- return imagehosting .upload_files (* self ['screenshots' ])
307+ return imagehosting .upload (* self ['screenshots' ])
308308
309309 def _render_mediainfo (self ):
310310 try :
@@ -530,7 +530,7 @@ def _render_cover(self):
530530 return self ['summary' ]['cover' ]
531531
532532 def _finalize_cover (self ):
533- return imagehosting .upload_urls (self ['cover' ])
533+ return imagehosting .upload (self ['cover' ])
534534
535535
536536class TvSubmission (VideoSubmission ):
Original file line number Diff line number Diff line change 1010 ask = True )
1111
1212
13- def upload_files ( * images ):
13+ def get_provider ( ):
1414 provider = config .get ('ImageHosting' , 'provider' )
1515 if provider .lower () == 'imgur' :
16- return ImgurUploader (). upload ( * images )
16+ return ImgurUploader
1717 elif provider .lower () == 'ptpimg' :
18- return PtpImgUploader ().upload_files (* images )
18+ return PtpImgUploader
19+ raise Exception ('Unknown image hosting provider in config {}' .format (
20+ config .config_path
21+ ))
1922
2023
21- def upload_urls (* images ):
22- provider = config .get ('ImageHosting' , 'provider' )
23- if provider .lower () == 'imgur' :
24- return ImgurUploader ().upload (* images )
25- elif provider .lower () == 'ptpimg' :
26- return PtpImgUploader ().upload_urls (* images )
24+ def upload (* images , provider = None ):
25+ if not provider :
26+ provider = get_provider ()
27+ uploader = provider ()
28+ return list (uploader .upload (* images ))
Original file line number Diff line number Diff line change @@ -76,7 +76,6 @@ def __init__(self):
7676
7777 def upload (self , * images ):
7878 self .imgur_auth .prepare ()
79- links = []
8079 for image in images :
8180 params = {'headers' : self .imgur_auth .get_auth_headers ()}
8281
@@ -99,8 +98,4 @@ def upload(self, *images):
9998 extensions [0 ], extensions [1 ])
10099
101100 log .notice ("Image URL: {}" , link )
102- if len (images ) == 1 :
103- return link
104- else :
105- links .append (link )
106- return links
101+ yield link
Original file line number Diff line number Diff line change 1313import os
1414from io import BytesIO
1515from textwrap import dedent
16+ from urllib .parse import urlparse
1617
1718import requests
1819
@@ -122,6 +123,16 @@ def upload_urls(self, *urls):
122123
123124 return self ._perform (files = files )
124125
126+ def upload (self , * images ):
127+ for image in images :
128+ if urlparse (image ).scheme in ('http' , 'https' ):
129+ yield self .upload_urls (image )
130+ elif urlparse (image ).scheme in ('file' , '' ):
131+ yield self .upload_files (image )
132+ else :
133+ raise Exception ('Unknown image URI scheme '
134+ '{}' .format (urlparse (image ).scheme ))
135+
125136
126137def _partition (files_or_urls ):
127138 files , urls = [], []
You can’t perform that action at this time.
0 commit comments