requsets模块的学习
requests模块的学习
使用之前
- pip install requests
发起get,post,请求获取响应
- response = requests.get(url,headers) # 发起get请求,请求url地址对应的响应
- response = requests.post(url,data={请求体的字典}) # 发起post请求
response的用法
- response.text
- 该方式往往会出现乱码,出现乱码使用response.encoding="utf-8"
- response.content.decode()
- 把响应的二进制字节转化为str类型
- bytes---> str
- response.request.url # 发送请求的url地址
- response.request.headers # 请求头
- response.headers # 响应头
获取网页的正确打开方式(通过下面三种获取解码之后的字符串)
- 1、response.content.decode()
- 2、response.content.decode("gbk")
- 3、response.text
发起带headers的请求
- 为了模拟浏览器,获取和浏览器一样的内容
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:66.0) Gecko/20100101 Firefox/66.0",
"Referer": "http: // acc.hnczt.gov.cn / SpaceAction.do?method = list & ntype = 3",
"Cookie": "Hm_lvt_35cde00bcde87c267839e0309e482db1 = 1554703285, 1554777297, 1554884326"
}
response = requests.get(url,headers)
使用超时参数
- pip install retrying
from retrying import retry
@retry(stop_max_attempt_number=3)
# 数字3代表的是下面的函数执行三次,有一次成功则跳过,没有一次成功则跑出异常
def func():
print("this is func")
raise ValueError("this is test error")
处理cookie相关的请求
直接携带cookie请求url地址
- 1、cookie放在headers中
headers = {
"User-Agent":"...","Cookie":"cookie字符串"
}
- 2、cookie字典传递给cookies参数
- requests.get(url, cookies=cookie_dict)
先发送post请求,获取cookie,带上cookie请求登录的页面
- 1、session = requests.session() # session具有的方法和requests一样
- 2、session.post(url, data, headers) # 服务器设置在本地的cookie存在session
- 3、session.get(url) # 会带上之前保存在session中的cookie, 能够请求成功
requsets模块的学习的更多相关文章
- python模块的学习
# time 模块 import time print(time.time()) #当前的时间挫 #time.sleep(3) #休息3秒钟,这3秒cpu不工作的 print(time.gmtime( ...
- Spark的Rpct模块的学习
Spark的Rpct模块的学习 Spark的Rpc模块是1.x重构出来可,以前的代码中大量使用了akka的类,为了把akka从项目的依赖中移除,所有添加了该模块.先看下该模块的几个主要的类 使用E ...
- retrying模块的学习
retrying模块的学习 我们在写爬虫的过程中,经常遇到爬取失败的情况,这个时候我们一般会通过try块去进行重试,但是每次都写那么一堆try块,真的是太麻烦,所以今天就来说一个比较pythonic的 ...
- AngularJs HTML DOM、AngularJS 事件以及模块的学习(5)
今天的基础就到了操作DOM,事件和模块的学习,其实我个人感觉学习起来AngularJS并没有想象中的那么的艰难,可能是因为这个太基础化吧,但是我们从初学开始就应该更加的自信一些,后来我可能会写一个小的 ...
- Python学习---重点模块的学习【all】
time [时间模块] import time # print(help(time)) # time模块的帮助 print(time.time()) # 时间戳 print(time.cloc ...
- Python模块——loguru日志模块简单学习
Python loguru模块简单学习 首先安装模块:pip install logoru,然后引入模块: from loguru import logger 1.直接输出到console logge ...
- Request模块入门学习
使用指令npm install --save request来安装模块,然后使用var request = require('request')完成引用. 对于GET请求,主要是获取目的url中数据. ...
- 网络请求 爬虫学习笔记 一 requsets 模块的使用 get请求和post请求初识别,代理,session 和ssl证书
前情提要: 为了养家糊口,为了爱与正义,为了世界和平, 从新学习一个爬虫技术,做一个爬虫学习博客记录 学习内容来自各大网站,网课,博客. 如果觉得食用不良,你来打我啊 requsets 个人觉得系统自 ...
- pump模块的学习-metamask
pump = require('pump') pump简介 https://github.com/terinjokes/gulp-uglify/blob/master/docs/why-use-pum ...
随机推荐
- STL里的内存池实现
这个貌似有点复杂,解决的主要问题 就是 减少 内存分配次数,减少用户态核心态切换中断次数,提高运行速度,预分配 和线程池一个道理,预分配 ////////////////////自由链表 union ...
- MySQL统计信息以及执行计划预估方式初探
数据库中的统计信息在不同(精确)程度上描述了表中数据的分布情况,执行计划通过统计信息获取符合查询条件的数据大小(行数),来指导执行计划的生成.在以Oracle和SQLServer为代表的商业数据库,和 ...
- Nginx 工作原理
Nginx 工作原理 Nginx由内核和模块组成. Nginx本身做的工作实际很少,当它接到一个HTTP请求时,它仅仅是通过查找配置文件将此次请求映射到一个location block,而此locat ...
- 2018面向对象程序设计(Java)第17周学习指导及要求
2018面向对象程序设计(Java)第17周学习指导及要求(2018.12.20-2018.12.23) 学习目标 (1) 掌握线程同步的概念及实现技术: (2) Java线程综合编程练习 学习资 ...
- springcloud-知识点总结(二):Ribbon&Feign
1.Ribbon简介 前面讲了eureka服务注册与发现,但是结合eureka集群的服务调用没讲. 这里的话 就要用到Ribbon,结合eureka,来实现服务的调用: Ribbon是Netflix发 ...
- EOS.IO Technical White Paper v2
[EOS.IO Technical White Paper v2] Abstract: The EOS.IO software introduces a new blockchain architec ...
- Matlab文本处理:提取指定内容
clc;clear; fileno=1; for i=1:fileno fid2=fopen('4B1T_wb_eq.txt','w'); %save data to 'logfile' in Mat ...
- python--第十三天总结(html ,css 语法)
概述 HTML是英文Hyper Text Mark-up Language(超文本标记语言)的缩写,他是一种制作万维网页面标准语言(标记).相当于定义统一的一套规则,大家都来遵守他,这样就可以让浏览器 ...
- Nginx(二)
利用include功能优化nginx的配置文件 [root@lnmp conf]# cat nginx.conf worker_processes 1; events { worker_con ...
- c#: WebBrowser控件html代码注入及交互
主题仍是下载相关. 页面加载完成后,注入html元素,以使能够与主程序交互.并使WebBrowser与js交互,可以实现一些有趣的功能. 欲使WebBrowser与js交互,其所在页面类,须加上[Co ...