title: urllib HTTP Error: 400 Bad Request
body: <p>I looked at this answer: <a href="https://stackoverflow.com/questions/26894320/again-urllib-error-httperror-http-error-400-bad-request">Again urllib.error.HTTPError: HTTP Error 400: Bad Request</a> because it was very similar to my question, but that solution did not work. I'm using Python 3.3.2. The lines that are like ..something.. are just values I replaced to protect my privacy. They should be strings</p>
  
  <p>I'm getting an Error 400: Bad request from this code: </p>
  
  <pre><code>import urllib.parse
  import urllib.request
  
  url = '..url..'
  user_agent = 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)'
  values = {'email':'..my email address..',
            'github':'..my github account..'}
  headers = {'User-Agent':user_agent}
  data = urllib.parse.urlencode(values)
  data = data.encode('utf-8')
  req = urllib.request.Request(url, data, headers)
  response = urllib.request.urlopen(req) #this line causes the errors
  page = response.read()
  </code></pre>
  
  <p>This is the particular error message:</p>
  
  <pre><code>Traceback (most recent call last):
    File "/Users/.../Documents/Code 2040/File.py", line 23, in &lt;module&gt;
      response = urllib.request.urlopen(req)
    File "/Library/Frameworks/Python.framework/Versions/3.3/lib/python3.3/urllib/request.py", line 156, in urlopen
      return opener.open(url, data, timeout)
    File "/Library/Frameworks/Python.framework/Versions/3.3/lib/python3.3/urllib/request.py", line 475, in open
      response = meth(req, response)
    File "/Library/Frameworks/Python.framework/Versions/3.3/lib/python3.3/urllib/request.py", line 587, in http_response
      'http', request, response, code, msg, hdrs)
    File "/Library/Frameworks/Python.framework/Versions/3.3/lib/python3.3/urllib/request.py", line 513, in error
      return self._call_chain(*args)
    File "/Library/Frameworks/Python.framework/Versions/3.3/lib/python3.3/urllib/request.py", line 447, in _call_chain
      result = func(*args)
    File "/Library/Frameworks/Python.framework/Versions/3.3/lib/python3.3/urllib/request.py", line 595, in http_error_default
      raise HTTPError(req.full_url, code, msg, hdrs, fp)
  urllib.error.HTTPError: HTTP Error 400: Bad Request
  </code></pre>