python get请求 url_python实现http get请求

接口请求方式为get请求,如下图抓包查看

Python实现脚本请求接口并以中文打印接口返回的数据

import urllib.parse

import urllib.request

url = "https://..../manage/region/list"

# 定义请求数据,并且对数据进行赋值

values={}

values['status']= 'hq'

values['token']= 'C6AD7DAA24BAA29AE14465DDC0E48ED9'

# 对请求数据进行编码

data = urllib.parse.urlencode(values).encode('utf-8')

print(type(data)) # 打印

print(data) # 打印b'status=hq&token=C6AD7DAA24BAA29AE14465DDC0E48ED9'

# 若为post请求以下方式会报错TypeError: POST data should be bytes, an iterable of bytes, or a file object. It cannot be of type str.

# Post的数据必须是bytes或者iterable of bytes,不能是str,如果是str需要进行encode()编码

data = urllib.parse.urlencode(values)

print(type(data)) # 打印

print(data) # 打印status=hq&token=C6AD7DAA24BAA29AE14465DDC0E48ED9

# 将数据与url进行拼接

req = url + '?' + data

# 打开请求,获取对象

response = urllib.request.urlopen(req)

print(type(response)) # 打印

# 打印Http状态码

print(response.status) # 打印200

# 读取服务器返回的数据,对HTTPResponse类型数据进行读取操作

the_page = response.read()

# 中文编码格式打印数据

print(the_page.decode("unicode_escape"))

执行脚本,接口返回数据

使用到的函数

urllib.parse.urlencode() 把key-value这样的键值对转换成a=1&b=2这样的字符串

urllib.request.urlopen() 打开指定的url,就是进行get请求

response.read() 读取HTTPResponse类型数据

脚本执行过程报错记录,requests爬虫时开启代理会报以下错误

requests.exceptions.SSLError: HTTPSConnectionPool(host='api.****.cn', port=443):Max retries exceeded with url: //manage/region/list (Caused by SSLError(SSLError("bad handshake: Error([('SSL routines', 'tls_process_server_certificate', 'certificate verify failed')])")))

python 3 处理HTTP 请求的包

http http: https://docs.python.org/3/library/http.html http是一个包,里面含有多个模块:http.client,http.server,htt ...

python CSRF跨站请求伪造

python CSRF跨站请求伪造

python发送HTTP POST请求

1. 127.0.0.1和0.0.0.0 127.0.0.1是一个回送地址,指本地机,一般用来本机测试使用,使用127.0.0.1启的服务只能在本地机器上访问,使用0.0.0.0启的服务可以在其他机器 ...

Python爬虫--- 1.1请求库的安装与使用

来说先说爬虫的原理:爬虫本质上是模拟人浏览信息的过程,只不过他通过计算机来达到快速抓取筛选信息的目的所以我们想要写一个爬虫,最基本的就是要将我们需要抓取信息的网页原原本本的抓取下来.这个时候就要用到请 ...

Python+requests 发送简单请求--》获取响应状态--》获取请求响应数据

Python+requests 发送简单请求-->获取响应状态-->获取请求响应数据 1.环境:安装了Python和vscode编译器(Python自带的编译器也ok).fiddler抓包 ...

Python +requests 关于post请求返回报错

python+request 发送post请求:msg返回"Content type 'application/octet-stream' not supported" 一.问题源 ...

python——django的post请求

两次被同一块石头绊倒简直不可原谅!第一次写django程序的时候,就因为ajax post请求折腾了整整一天,时隔两个多月昨天又被虐一整晚.叔可忍婶儿也不能忍了!!!重要的事情写下来,为以后轻松碾压p ...

python 模拟登陆,请求包含cookie信息

需求: 1.通过GET方法,访问URL地址一,传入cookie参数 2.根据地址一返回的uuid,通过POST方法,传入cooki参数 实现思路: 1.理解http的GET和POST差别 (网上有很多 ...

Python socket模拟HTTP请求

0x00 起 最近在做一个对时间要求比较高的扫描器,需要封装一下SOCKET模拟HTTP发包的一些常用函数.简单的说,就是重写一下requests中的get.post方法. 今天在写的时候,遇到一枚很 ...

python 2 处理HTTP 请求的包

httplib httplib: https://docs.python.org/2/library/httplib.html python 的官方文档这样说明: This module define ...

随机推荐

linux源码分析(五)-start_kernel

前置:这里使用的linux版本是4.8,x86体系. local_irq_disable(); 这个函数是做了关闭中断操作.和后面的local_irq_enable相对应.说明启动的下面函数是不允许被 ...

cocos2d-js去掉左下角的三行数字(帧数)

project.json 里面"showFPS": true, 改成 false 就行了... 调整帧率也在这里调整 或者是 同cocos2dx,cocos2d-js左下角的FPS ...

poj3984

定义一个二维数组: int maze[5][5] = { 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, ...

[转] 理解 Thread.Sleep 函数

原文链接:http://www.cnblogs.com/ILove/archive/2008/04/07/1140419.html 我们可能经常会用到 Thread.Sleep 函数来使线程挂起一段时 ...

CocurrentHashMap和Hashtable的区别

集合类是Java API的核心,但是我觉得要用好它们是一种艺术.我总结了一些个人的经验,譬如使用ArrayList能够提高性能,而不再需要过时的Vector了,等等.JDK 1.5引入了一些好用的并发 ...

[安卓]我的安卓开发FAQ

1.什么是ADT: android官方解释是:ADT (Android Developer Tools) is a plugin for Eclipse that provides a suite o ...

javaweb学习总结一(eclipse常用快捷键、debug调试以及junit测试框架)

一:web的发展趋势1:C/S(客户端/服务器)结构向B/S(浏览器/服务器)结构发展,以后的电脑只需操作系统和浏览器即可.所有的服务都存储在服务器端,只需用户登录后从服务端同步数据,例如:看电影不需 ...

201521123115《java程序设计》第9周学习总结

1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常相关内容. 2. 书面作业 本次PTA作业题集异常 常用异常 题目5-1 1.1 截图你的提交结果(出现学号) 1.2 自己以前 ...

Java框架之Spring(五)

本文主要介绍Spring中, 1 Spring JDBC 2 使用注解方式管理事务的传播行为 3 采用XML 方式配置事务 4 SH 整合 5 SSH 整合 一.Spring JDBC 1) 导包 , ...

你可能感兴趣的:(python,get请求,url)