zoukankan      html  css  js  c++  java
  • python网络编程----requests模块

    python访问网站可以用标准模块--urllib模块(这里省略),和requests(安装-pip install requests)模块,requests模块是在urllib的基础上进行的封装,比urllib模块功能更强到,易用

    import json,requests
    #发送get请求
    url = 'http://api.nnzhp.cn/api/user/stu_info?stu_name=小黑马'
    req = requests.get(url) #发送get请求
    print(req.text) #获取结果,返回string/html等用text
    print(req.json()) #获取结果直接就是字典,等价于  print(json.loads(req.text)) #json串转化成字典,注:返回的必须是json串,才能用.json方法。
    
    #发送post请求
    url = 'http://api.nnzhp.cn/api/user/login'
    data =  {'username':'niuhanyang','passwd':'aA123456'}
    req = requests.post(url,data) #发送post请求,第一个参数是url,第二个参数是请求参数
    print(req.json())
    
    #入参是json的
    url = 'http://api.nnzhp.cn/api/user/add_stu'
    data =  {'name':'丁飞','grade':'巨蟹座','phone':31971891223}
    req = requests.post(url,json=data) #发送post请求,第一个参数是url,第二个参数是请求参数
    print(req.json())
    
    #添加cookie
    url = 'http://api.nnzhp.cn/api/user/gold_add'
    data =  {'stu_id':231,'gold':1000}
    cookie = {'niuhanyang':'6d195100b95a43046d2e385835c6e2c2'}
    req = requests.post(url,data,cookies=cookie)
    print(req.json())
    
    #添加header
    url='http://api.nnzhp.cn/api/user/all_stu'
    h = {'Referer':'http://api.nnzhp.cn/','User-Agent':'Chore'}#可以添加多个header,用,分开
    res = requests.get(url,headers=h)
    print(res.json())
    
    #上传文件
    url = 'http://api.nnzhp.cn/api/file/file_upload'
    f = open(r'C:UsersjniuhanyangDesktopad.cpm.schedulingInfo.v1.json','rb')
    r = requests.post(url,files={'file':f})
    print(r.json())
    
    #下载文件
    url= 'http://www.besttest.cn/data/upload/201710/f_36b1c59ecf3b8ff5b0acaf2ea42bafe0.jpg'
    r  = requests.get(url)
    print(r.status_code)  #获取请求的状态码
    print(r.content)  #获取返回结果--二进制格式的
    fw = open(r'bt.jpg','wb')
    fw.write(r.content)
    fw.close()
    
    #保存网页
    url = 'http://www.nnzhp.cn/archives/630'
    r = requests.get(url)
    f = open('nnzhp.html','wb')
    f.write(r.content)
    f.close()
    

      

  • 相关阅读:
    软件系统架构演变
    PL/SQL语法
    ambari安装指南
    手把手带你使用JS-SDK自定义微信分享效果
    微信公众平台无法使用支付宝收付款的解决方案
    php创建含文件夹的zip文件
    捣鼓TinyMCE 粘贴图片并上传+Django后台
    捣鼓TinyMCE粘贴图片并上传+Flask后台
    关于Java 中Integer 和Long对象 对比的陷阱(简单却容易犯的错误)
    Java东西太多,记录一些知识点
  • 原文地址:https://www.cnblogs.com/alasijia/p/8439675.html
Copyright © 2011-2022 走看看