diff options
Diffstat (limited to 'wiki2text.py')
-rw-r--r-- | wiki2text.py | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/wiki2text.py b/wiki2text.py index 916391e..5041ea0 100644 --- a/wiki2text.py +++ b/wiki2text.py @@ -15,10 +15,14 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. -from wikimarkup import * -from wikins import wiki_ns_re, wiki_ns +from wit.wikimarkup import * +from wit.wikins import wiki_ns_re, wiki_ns import re -import urllib +try: + from urllib import quote as url_quote +except ImportError: + from urllib.parse import quote as url_quote + class TextWikiMarkup (WikiMarkup): """ @@ -62,7 +66,7 @@ class TextWikiMarkup (WikiMarkup): def mktgt(self, tgt, lang = None): if not lang: lang = self.lang - return self.html_base % { 'lang' : lang } + urllib.quote(tgt) + return self.html_base % { 'lang' : lang } + url_quote(tgt) def fmtlink(self, elt, istmpl): arg = self.format(elt['content'][0]) @@ -87,8 +91,8 @@ class TextWikiMarkup (WikiMarkup): return "" text = "[%s: %s]" % (qual, text if text else arg) tgt = self.image_base + '/' + \ - urllib.quote(tgt) + \ - '/250px-' + urllib.quote(tgt) + url_quote(tgt) + \ + '/250px-' + url_quote(tgt) elif ns == 'NS_MEDIA': text = "[%s]" % (qual) else: @@ -112,7 +116,7 @@ class TextWikiMarkup (WikiMarkup): s = (" " * lev) + text else: s = "" - for elt in text.split('\n'): + for elt in text.decode("utf-8").split('\n'): if elt: s += (" " * lev) + elt + '\n' if not text.endswith('\n'): |