Revision: 7407 Author: alexsh Date: 2009-10-09 21:28:36 +0000 (Fri, 09 Oct 2009)
Log Message: ----------- add process for action=upload
Modified Paths: -------------- trunk/pywikipedia/query.py
Modified: trunk/pywikipedia/query.py =================================================================== --- trunk/pywikipedia/query.py 2009-10-09 20:07:57 UTC (rev 7406) +++ trunk/pywikipedia/query.py 2009-10-09 21:28:36 UTC (rev 7407) @@ -91,6 +91,7 @@ if useAPI: if params['action'] in postAC: path = site.api_address() + cont = '' else: path = site.api_address() + urllib.urlencode(params.items())
@@ -109,7 +110,18 @@ while retryCount >= 0: try: jsontext = "Nothing received" - if site.hostname() in wikipedia.config.authenticate.keys(): + if params['action'] == 'upload' and ('file' in params or cont): + import upload + if not cont: + cont = params['file'] + del params['file'] + + res, jsontext = upload.post_multipart(self.site, path, params, + (('file', params['filename'].encode(self.site.encoding()), cont),), self.cookies(sysop=sysop) + ) + + + elif site.hostname() in wikipedia.config.authenticate.keys(): params["Content-type"] = "application/x-www-form-urlencoded" params["User-agent"] = useragent res = urllib2.urlopen(urllib2.Request(site.protocol() + '://' + site.hostname() + address, site.urlEncode(params)))
pywikipedia-svn@lists.wikimedia.org