title: requests payload encoding
body: <p>I use requests to pretend firefox and from the fiddler, I saw header is same, but the SystaxView not same</p>
  
  <pre><code>payload = {'searchType':'U'}
  s.post(url,data=payload)
  </code></pre>
  
  <p>but I got error 500, From the syntax view, I saw in requests it will change to <code>searchType=U</code> 
  But Real browser will output <code>searchType='U'</code>.</p>
  
  <p>I tried <code>payload = {'searchType':'\'U\''}</code> it will become<code>searchType=%27U%27</code> in Syntax view.</p>
  
  <p>any idea? I only find 1 difference, so I suspect it will trigger 500 error. </p>
  
  <pre><code>import requests
  
  s=requests.Session()
  s.headers.update({'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:62.0) Gecko/20100101 Firefox/62.0'})
  s.get('http://gls.fehd.gov.hk/fehd_lgs/jsp/search/searchMainPage.jsp?lang=zh_TW')
  s.headers.update({'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'X-Requested-With': 'XMLHttpRequest'})
  s.headers.update({'Referer': 'http://gls.fehd.gov.hk/fehd_lgs/jsp/search/searchMainPage.jsp?lang=zh_TW', 'HOST':'gls.fehd.gov.hk'})
  s.headers.update({'Accept': 'application/xml, text/xml, */*; q=0.01'})
  payload={'searchType':'U','deceased_surName':'','deceased_firstName':'','deceased_age':'','deceased_gender':'M','deceased_nationality':'','deathYear':'','deathMonth':'default','deathDay':'default','burialYear':'','burialMonth':'default','burialDay':'default','sectionNo':'','graveNo':''}
  
  url='http://gls.fehd.gov.hk/FEHD_LGS/util/getSearchResult.jsp'
  
  s.post(url,data=payload)
  </code></pre>