I'd recomment another pass to reduce the now fully redundant () pairs around % string substitutions, but in principle LGTM.
Please just use a normal for-loop here instead of join + list comprehension?
The change you request is unrelated to that commit, I suggest we postpone it to another patch.
Add missing file with print-related changes.
urllib2 was correct