Passing a data URL (such as "data:text/plain,hello") to urlopen raises a URLError, although this works in both Python 2.7 and Python 3.5. I'm not sure if this was added after Python 3.3 on which the backports code is based according to the source, but according to the 3.3 documentation it seems that it should have worked even in Python 3.3.