python学习笔记(十二)-网络编程

本文结束使用 Requests 发送网络请求。requests是一个很实用的Python HTTP客户端库,编写爬虫和测试服务器响应数据时经常会用到。可以说,Requests 完全满足如今网络的需求。

安装方式一般采用$ pip install requests。

一开始要导入 Requests 模块:

import requests

发送get请求

url = ‘http://api.xxx.com/api/user/stu_info?stu_name=小黑马

req = requests.get(url) #发送get请求

print(req.text) #获取结果

print(req.json()) #获取结果直接就是字典,必须返回的是json串,才能用.json方法。

发送post请求

url = ‘http://api.xxx.com/api/user/login

data = {‘username‘:‘xiaohei‘,‘passwd‘:‘aA123456‘}

req = requests.post(url,data) #发送post请求,第一个参数是url,第二个参数是请求的数据

print(req.json())

入参是json的

url = ‘http://api.xxx.com/api/user/add_stu

data = {‘name‘:‘丁飞‘,‘grade‘:‘巨蟹座‘,‘phone‘:31971891223}

req = requests.post(url,json=data) #发送post请求,第一个参数是url,第二个参数是请求的数据

print(req.json())

添加cookie

url = ‘http://api.xxx.com/api/user/gold_add

data = {‘stu_id‘:231,‘gold‘:1000}

cookie = {‘xiaohei‘:‘6d195100b95a43046d2e385835c6e2c2‘}

req = requests.post(url,data,cookies=cookie)

print(req.json())

添加header

url=‘http://api.xxx.com/api/user/all_stu

mpp = {‘Referer‘:‘http://api.xxx.com/‘,‘User-Agent‘:‘Chore‘}

res = requests.get(url,headers=mpp)

print(res.json())

上传文件

url = ‘http://api.xxx.com/api/file/file_upload

f = open(r‘C:\Users\bjxiaohei\Desktop\ad.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.xxx.com/archives/630

r = requests.get(url)

f = open(‘xxx.html‘,‘wb‘)

f.write(r.content)

f.close()

原文地址:https://www.cnblogs.com/lincy/p/8395084.html

时间: 2024-10-07 22:49:13

python学习笔记(十二)-网络编程的相关文章

python学习笔记8:网络编程--requests模块

python操作网络,也就是打开一个网站,或者请求一个http接口. 使用requests模块,pip install requests 安装即可. requests 模块是基于urllib模块进行开发的,urllib用起来比较麻烦:传参数的话,都得是bytes类型,返回数据也是bytes类型,还得解码.所以我直接丢弃之 一.打开一个网站 二.请求一个接口 1.key-value传参的接口 2.json传参的接口 3.要添加cookie的接口 4.要加header的接口 5.要加权限的接口

python学习笔记(十二) - 常用内建模块

一.collections 1. namedtuple namedtuple是一个函数,它用来创建一个自定义的tuple对象,并且规定了tuple元素的个数,并可以用属性而不是索引来引用tuple的某个元素. from collections import namedtuple Point = namedtuple('Point', ['x', 'y']) p = Point(1, 2) print p.x print p.y 2.deque deque是为了实现高效插入和高效删除操作的双向列表

python学习笔记十二:类的定义

demo #!/usr/bin/python class Person: name = 'jim' age = 25 def say(self): print 'My name is ' + self.name + ', and age is ' + str(self.age) p = Person() p.say() print p.name

python 学习笔记十二 CSS基础(进阶篇)

1.CSS 简介 CSS 指层叠样式表 (Cascading Style Sheets) 样式定义如何显示 HTML 元素 样式通常存储在样式表中 把样式添加到 HTML 4.0 中,是为了解决内容与表现分离的问题 外部样式表可以极大提高工作效率 外部样式表通常存储在 CSS 文件中 多个样式定义可层叠为一 css存在方式: 元素内联 页面嵌入 外部引入 语法:style = 'key1:value1;key2:value2;' 1.元素内联(在标签中使用css) <!--在标签使用--> &

python 学习笔记十二之 html基础(进阶篇)

HTML 超级文本标记语言是标准通用标记语言下的一个应用,也是一种规范,一种标准,它通过标记符号来标记要显示的网页中的各个部分.网页文件本身 是一种文本文件,通过在文本文件中添加标记符, 可以告诉浏览器如何显示其中的内容(如:文字如何处理,画面如何安排,图片如何显示等).浏览器按顺序阅读 网页文件,然后根据标记符解释和显示其标记的内容,对书写出错的标记将不指出其错误, 且不停止其解释执行过程,编制者只能通过显示效果来分析出错原因和出 错部位.但需要注意的是,对于不同的浏览器,对同一标记符可能会有

Swift学习笔记十二:下标脚本(subscript)

下标脚本就是对一个东西通过索引,快速取值的一种语法,例如数组的a[0].这就是一个下标脚本.通过索引0来快速取值.在Swift中,我们可以对类(Class).结构体(structure)和枚举(enumeration)中自己定义下标脚本的语法 一.常规定义 class Student{ var scores:Int[] = Array(count:5,repeatedValue:0) subscript(index:Int) -> Int{ get{ return scores[index];

python学习笔记十——异常处理

1.try: command except 错误类型,记录错误信息变量: command finally: command try...finally的用处是无论是否发生异常都要确保资源释放代码的执行.一般来说,如果没有发生错误,执行过try语句块之后执行finally语句块,完成整个流程.如果try语句块发生了异常,抛出了这个异常,此时就马上进入finally语句块进行资源释放处理.如下从几个细节讨论finally的特性. 1).try中的return: 当在try语句块中含有return语句

虚拟机VMWare学习笔记十二 - 将物理机抓取成虚拟机

1. 安装VMware vCenter Converter Standalone Client 运行虚拟机,File -- Virtualize a Physical Machine 这时如果电脑中没有VMware vCenter Converter Standalone Client ,则会进行安装. 安装过程 之后图标会出现在桌面上,双击运行 选择连接到本地服务器,登陆 点击转换计算机 这个,可以将本地计算机抓取成虚拟机,也可以将其他可以访问的计算机(需知道管理员用户名及密码)抓取成虚拟机.

python 学习笔记 (二)

逻辑运算符 python不用&& || !表示与或非,用and or not,优先级是not > and > or. bool类型:True 和 False 条件语句 if expression1: ; elif expression2: ; else: ; 字符串函数 word = raw_input("Enter a word: ") # 读入字符串给word isalpha()  # 返回False如果字符串里含有非字母字符 word = word[n