title: How to deal with unicode string in URL in python3?
body: <pre><code># -*- coding: utf-8 -*- 
  # Python3
  import urllib
  import urllib.request as url_req
  opener = url_req.build_opener()
  url='http://zh.wikipedia.org/wiki/'+"毛泽东"
  opener.open(url).read()
  # opener.open(url.encode("utf-8")).read()
  # # doesn't work either
  </code></pre>
  
  <p>When I run it, it complains that:</p>
  
  <p><code>UnicodeEncodeError: 'ascii' codec can't encode characters in position 10-12: ordinal not in range(128)</code></p>
  
  <p>But I can't use <code>.encode()</code> either as it will complain:</p>
  
  <pre><code>Traceback (most recent call last):
    File "t.py", line 8, in &lt;module&gt;
      opener.open(url.encode("utf-8")).read()
    File "/usr/local/Cellar/python3/3.2.2/lib/python3.2/urllib/request.py", line 360, in open
      req.timeout = timeout
  AttributeError: 'bytes' object has no attribute 'timeout'
  </code></pre>
  
  <p>Anyone knows how to deal with that?</p>