如有任何学习问题,可以添加作者微信:lockingfree

更多学习资料请加QQ群: 822601020获取

HTTP,GET请求,无参

GET http://httpbin.org/get

Python3 http.client

import http.client

# 1. 建立HTTP连接
conn = http.client.HTTPConnection("httpbin.org")
# 2. 发送GET请求,制定接口路径
conn.request("GET", '/get')
# 3. 获取相应
res = conn.getresponse()
# 4. 解析相应.进行解码
print(res.read().encode("utf-8")) # 自己解码

Python3 urllib.request

import urllib

res = urllib.request.urlopen("http://httpbin.org/get")
print(res.read().decode("utf-8")) # 自己解码

Python3 requests

import requests

res = requests.get("http://httpbin.org/get")
print(res.text) # 自动按默认utf-8解码

HTTPS,GET请求,带中文参数

GET http://httpbin.org/get?name=张三&age=12

Python3 http.client

import http.client
import urllib.parse conn = http.client.HTTPSConnection("httpbin.org")
url = urllib.parse.quote("/get?name=张三&age=12", safe=':/?=&') # 进行url编码
conn.request("GET", url)
res = conn.getresponse()
print(res.read().decode("utf-8")) # 自己解码

Python3 urllib.request

import urllib
import urllib.parse url = urllib.parse.quote("https://httpbin.org/get?name=张三&age=12", safe=':/?=&') # 进行url编码
res = urllib.request.urlopen("url")
print(res.read().decode("utf-8")) # 自己解码

Python3 requests

import requests

res = requests.get("https://httpbin.org/get?name=张三&age=12") # 自动编码
print(res.text) # 自动按默认utf-8解码

Post x-www-form-urlencoded传统表单请求

POST http://httpbin.org/post 请求数据: name=张三&age=12

Python3 http.client

import http.client
import urllib.parse conn = http.client.HTTPConnection("httpbin.org")
data = urllib.parse.urlencode({"name":"张三", "age": 12}).encode("utf-8") # 对数据进行url编码及utf-8编码
conn.request("POST", '/post', data)
res = conn.getresponse()
print(res.read().decode("utf-8"))

Python3 urllib.request

import urllib
import urllib.parse
import urllib.request data = urllib.parse.urlencode({"name":"张三", "age": 12}).encode("utf-8") # 对数据进行url编码及utf-8编码
req = urllib.request.Request("http://httpbin.org/post", data=data)
res = urllib.request.urlopen(req)
print(res.read().decode("utf-8"))

Python3 requests

import requests

data = {"name":"张三", "age": 12}
res = requests.post("http://httpbin.org/post", data=data) # 自动编码
print(res.text)

Post application/json请求

POST http://httpbin.org/post 请求数据: {"name": "张三","age": 12}

Python3 http.client

import http.client
import urllib.parse
import json conn = http.client.HTTPConnection("httpbin.org")
data = '{"name":"张三", "age": 12}'.encode('utf-8') # 或data = json.dumps({"name":"张三", "age": 12})
headers = {"Content-Type": "application/json"}
conn.request("POST", '/post', data, headers)
res = conn.getresponse()
print(res.read().decode("utf-8"))

Python3 urllib.request

import urllib
import urllib.parse
import urllib.request
import json data = '{"name":"张三", "age": 12}'.encode('utf-8') # 或data = json.dumps({"name":"张三", "age": 12})
headers = {"Content-Type": "application/json"}
req = urllib.request.Request("http://httpbin.org/post", data=data, headers=headers)
res = urllib.request.urlopen(req)
print(res.read().decode("utf-8"))

Python3 requests

import requests

data = {"name":"张三", "age": 12}
res = requests.post("http://httpbin.org/post", json=data)
print(res.json()) # 转为字典格式

import requests
import json data = {"name":"张三", "age": 12}
headers = {"Content-Type": "application/json"}
res = requests.post("http://httpbin.org/post", data=json.dumps(data), headers=headers)
print(res.json()) # 转为字典格式

Python3 内置http.client,urllib.request及三方库requests发送请求对比的更多相关文章

  1. python3内置函数大全(顺序排列)

    python3内置函数大全 内置函数 (1)abs(),   绝对值或复数的模 1 print(abs(-6))#>>>>6 (2)all() 接受一个迭代器,如果迭代器的所有 ...

  2. python3内置函数大全

    由于面试的时候有时候会问到python的几个基本内置函数,由于记不太清,就比较难受,于是呕心沥血总结了一下python3的基本内置函数 Github源码:        https://github. ...

  3. python3 内置常用函数系列一

    python3 内置了一系列的常用函数, python英文官方文档详细说明:点击查看, 为了方便查看,将内置常用的函数的记录一下来. Python3版本所有的内置函数: 1.abs() print(a ...

  4. Python3内置函数、各数据类型(int/str/list/dict/set/tuple)的内置方法快速一览表

    Python3内置函数 https://www.runoob.com/python3/python3-built-in-functions.html int https://www.runoob.co ...

  5. python3内置函数详解

    内置函数 注:查看详细猛击这里 abs() 对传入参数取绝对值 bool() 对传入参数取布尔值, None, 0, "",[],{},() 这些参数传入bool后,返回False ...

  6. JSP内置九个对象Request请求对象

    jsp内置对象是什么呢? 例如Java语言使用一个对象之前需要实例化(也就是所说的new一个对象),创建对象这个过程有点麻烦,所以在jsp中提供了一些内置对象,用来实现很多jsp应用.在使用内置对象时 ...

  7. python3内置的tkinter参数释疑

    最近涉及到需要实现一个桌面UI的小游戏,所以就翻看了一些文档. 当然有介绍使用pyQT5的,但是本机安装的是python3.4,不想卸载掉这个版本,暂时还不能使用pyQT5. pyQT5需要pytho ...

  8. JSP内置对象——out对象/request对象

    在这个科技高速发展的时代,迫使我们的脚步一刻都不能停下. 在这个for循环语句当中,我们可以直接使用jsp内置对象中的out对象来给浏览器打印输出,那么这个out对象就是一个内置对象, 在这里,我们使 ...

  9. python 之 python3内置函数

    一. 简介 python内置了一系列的常用函数,以便于我们使用,python英文官方文档详细说明:点击查看, 为了方便查看,将内置函数的总结记录下来. 二. 使用说明 以下是Python3版本所有的内 ...

随机推荐

  1. php-获取某个文件夹下面的文件数量

    /** * 获取文件夹下文件的数量 * @param $url 传入一个url如:/apps/web * @return int 返回文件数量 */ public function getFileNu ...

  2. App客户端性能测试点总结

    一.内存 测试范围1. 空闲状态下的应用内存消耗情况2. 中等规格状态下的应用内存消耗情况3. 满规格状态下的应用内存消耗情况4. 应用内存峰值情况5. 应用内存泄露情况6. 应用是否常驻内存7. 压 ...

  3. 刷新ip地址 windows linux系统

    linux:使用dhcp去更新ip与释放ip 释放ip: dhclient -r eth0 (释放eth0的ip) 更新ip : dhclient eth0 (针对eth0,请求新的ip) windo ...

  4. .net core 3.0更改默认身份认证的的表。

    public class ApplicationDbContext : IdentityDbContext<WebUser, WebRole, Guid, WebUserClaim, WebUs ...

  5. google mock C++单元测试框架

    转:google mock C++单元测试框架 2012-03-12 09:33:59 http://blog.chinaunix.net/uid-25748718-id-3129590.html G ...

  6. java基础点

    1.eclipse什么时候编译java类文件 2.在同一包中的类可以相互引用,无需用import语句 3.在Java eclipse用ALT输入特殊符号 4.if else等语句,什么时候可以不加括号 ...

  7. 美化WebApi,使其统一返回Json格式

    博客部分代码来自其他博主,暂时找不到你的博文连接,如果您觉得我的代码中引入了您的代码或者文章,可在下方把您的博客文章写在下面,谢谢!!! WebApi有两种返回数据格式,一种是XML,一种是Json, ...

  8. 《Python编程:从入门到实践》第五章 if语句 习题答案

    #5.1 major = 'Software Engineering' print("Is major =='Software Engineering'? I predict True.&q ...

  9. Centos 6.x开机启动流程

    Centos 6.x开机启动流程 BIOS(COMS)检查 加载Bios,bios包含所有硬件信息(CPU,内存,硬盘,时钟,鼠标键盘等等) 读MBR 硬盘上第0磁道第一个扇区被称为MBR(maste ...

  10. python----print线程安全问题

    在Python2中print是非线程安全的,Python3中是安全的 https://www.jianshu.com/p/acdaf2ffd81b