urllib发送带参数的post请求


urllib发送带参数的post请求

  • 定义参数
  • 将参数转化为字符串
  • 将字符串编码为字节bytes类型
  • 组装请求对象
  • 发送请求,得到返回的结果
  • 将返回结果按照指定的编码方式解码
from urllib import request, parse
def fanyi(keyword):
    url = "https://fanyi.baidu.com/sug"

    data = {				# 定义参数
        'kw': keyword
    }
    data = parse.urlencode(data)	# 将参数编码成字符串
    data = bytes(data, encoding='utf-8')	# 再将字符串编码为字节类型


    headers = {
        'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.61 Safari/537.36',
    }

    req = request.Request(url, data=data, headers=headers)	#组装请求对象,传入url, 字节类型的参数data,相应的header头信息。

    res = request.urlopen(req)	# 发送请求
    # print(res)

    html = res.read().decode('utf-8')	# 将接收到的数据使用utf8解码

    json_data = json.loads(html)
    print(json_data['data'][0]['v'])


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM