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 mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/pywikipedia-svn