请求百度翻译

  1. # post请求
  2. import urllib.request
  3. import urllib.parse
  4. url = 'https://fanyi.baidu.com/sug'
  5. headers = {
  6. 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.159 Safari/537.36'
  7. }
  8. data = {
  9. 'kw':'spider'
  10. }
  11. # post请求的参数 必须要进行编码
  12. data = urllib.parse.urlencode(data).encode('utf-8')
  13. # post的请求的参数 是不会拼接在url的后面的 而是需要放在请求对象定制的参数中
  14. # post请求的参数 必须要进行编码
  15. request = urllib.request.Request(url=url,data=data,headers=headers)
  16. # 模拟浏览器向服务器发送请求
  17. response = urllib.request.urlopen(request)
  18. # 获取响应的数据
  19. content = response.read().decode('utf-8')
  20. # 字符串--》json对象
  21. import json
  22. obj = json.loads(content)
  23. print(obj)
  24. # post请求方式的参数 必须编码 data = urllib.parse.urlencode(data)
  25. # 编码之后 必须调用encode方法 data = urllib.parse.urlencode(data).encode('utf-8')
  26. # 参数是放在请求对象定制的方法中 request = urllib.request.Request(url=url,data=data,headers=headers)