Merge pull request #185 from Jorick/master
[rainbowstream.git] / rainbowstream / py3patch.py
index 660bd0bd29653784b6b49cd4bb31202b18e60e71..7e71e2a04fa897f282e4e53bf0a0a0c0c42d3c89 100644 (file)
@@ -1,31 +1,28 @@
-"""
-  Python 3 supports
-"""
 import sys
 
-# StringIO module
-try:
-    from StringIO import StringIO, BytesIO
-except:
-    from io import StringIO, BytesIO
-
-# HTMLParser module
+# Library compatibility
 if sys.version[0] == "2":
     from HTMLParser import HTMLParser
+    from urllib2 import URLError
 else:
     from html.parser import HTMLParser
+    from urllib.error import URLError
+
 unescape = HTMLParser().unescape
 # According to https://github.com/python/cpython/blob/master/Lib/html/parser.py#L547 ,
 # in python 3.5 maybe I should use
 # from html import unescape
 # but it is a far-future story:)
 
-# raw_input and map function behaviour
+
+# Function compatibility
+# xrange, raw_input, map ,unicde
 if sys.version[0] == "2":
     lmap = lambda f, a: map(f, a)
-    unc = lambda x: x.decode('utf-8')
+    str2u = lambda x: x.decode('utf-8')
+    u2str = lambda x: x.encode('utf-8')
 else:
     xrange = range
     raw_input = input
     lmap = lambda f, a: list(map(f, a))
-    unc = lambda x: x
+    str2u = u2str = lambda x: x