• python--网络请求


    一、urllib模块

    from urllib.request import urlopen
    from urllib.parse import urlencode
    import json
    
    #get请求,不需要传参
    url ='http://www.nnzhp.cn/archives/423'
    res =urlopen(url).read().decode()  #获取到的内容为二进制类型的,decode()成字符串
    f=open('a.html','w',encoding='utf-8')
    f.write(res)
    f.close()
    
    #post请求,需传参,且参数必须是二进制
    url='http://api.nnzhp.cn/api/user/login'
    data ={'username':'niuhanyang','passwd':'aA123456'}
    res =urlopen(url,urlencode(data).encode()).read().decode()  #入参需要是二进制形式,所以要encode()
    d=json.loads(res)
    print(d)

    二、requests模块

    import requests
    
    url ='http://www.nnzhp.cn/archives/423'
    # 没有参数的get请求
    res=requests.get(url)
    
    #有参数的get请求,参数为k-v形式
    res=requests.get(url,
                     params={'key':'value'},
                     cookies={'key':'value'},
                     headers={'key':'value'})
    print(res.text)  #返回的是字符串
    
    
    url='http://api.nnzhp.cn/api/user/login'
    res=requests.post(url,
                      data={'username':'niuhanyang','passwd':'aA123456'})
    print(res.json()) #返回字典
    # print(res.text)#返回字符串
    
    #返回歌曲、图片.....(二进制文件)
    MP3_url='http://qiniuuwmp3.changba.com/1113525663.mp3'
    res = requests.get(MP3_url)
    mp3=res.content  #返回二进制
    f=open('g.mp3','wb')
    f.write(mp3)
    f.close()
    
    
    # 入参为file
    url='http://api.nnzhp.cn/api/file/file_upload'
    res=requests.post(url,files={'file':open('aa.txt','rb')})
    print(res.json())
    
    #入参为json
    url='http://api.nnzhp.cn/api/user/add_stu'
    data={'phone':'12345678654','age':2,'grade':'金牛座','name':'hehe'}
    res=requests.post(url,json=data)
    print(res.json())
  • 相关阅读:
    java的sha1加密,转化为python版本
    VUE:页面跳转时传递参数,及参数获取
    如何使用 Django中的 get_queryset, get_context_data和 get_object 等方法
    django orm 外键id返回对应的名称
    spring boot(一):入门篇
    redis学习(四)——Hash数据类型
    redis学习(三)——List数据类型
    redis学习(二)——String数据类型
    Java多线程(七)——线程休眠
    MySQL和B树的那些事
  • 原文地址:https://www.cnblogs.com/HathawayLee/p/9904467.html
Copyright © 2020-2023  润新知