博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
爬虫笔记3:requests库使用
阅读量:6914 次
发布时间:2019-06-27

本文共 953 字,大约阅读时间需要 3 分钟。

requests库概述

Python内置的urllib库在对于Cookies,登录验证,代理方面等操作太繁琐。而requests库在这些方面却做得很好!


请求方法:get(),返回一个Response对象

参数:url,data,headers,proxies,verity,timeout
  1、url:请求的URL
  2、data:模拟表单,参数是传一个字典
  3、headers:请求头,伪装成浏览器
  4、proxies:防止被封IP,参数是传一个字典
  5、timeout:超时设置
  6、verify:SSL证书验证,默认是True
属性:
  text:返回Unicode内容;
  content:返回字节流内容
  status-code:状态码
  cookies:返回cookies
其他重要方法:
post():使用post请求
Session():获取会话维持


get()和post()的区别

  1、 get:表单数据会附在url之后(HTTP协议头)
    post:数据不会附在url之后(HTTP包的包体中)
  2、 get:对URL长度有限制
    post:理论上不限制
  3、 get:可被缓存
    post:不可被缓存(安全性高)


response对象的text和content区别

content返回的是byte型数据,而text返回的是Unicode数据
代码演示:

import requests#请求字节流文件r = requests.get('https://p1.ssl.qhimg.com/t0151320b1d0fc50be8.png')print(r.text)#已经以某种格式进行解码,出现乱码print(r.content)#返回文件的bytes数据with open('360.png','wb') as f:f.write(r.content)

cookies获取

使用response对象的cookies属性获取

for key,value in r.cookies.items():print(key,':',value)

转载于:https://blog.51cto.com/14065757/2342915

你可能感兴趣的文章
剑指offer题目java实现
查看>>
Linux内核之于红黑树and AVL树
查看>>
LoaderManager使用详解(二)---了解LoaderManager
查看>>
EtherCAT对PHY有要求?
查看>>
ios应用内下载并安装另一个应用
查看>>
SQL GROUP BY 语句
查看>>
简单介绍一些HTML代码(字幕、音频和视频)
查看>>
Java——复选框:JCheckBox
查看>>
用android模拟器Genymotion定位元素
查看>>
iOS学习:UILabel和sizeWithFont方法
查看>>
java-学习-自我规划
查看>>
在Ubuntu下搭建ASP.NET 5开发环境
查看>>
互联网时代下,数据产业正成为一种新的生意
查看>>
咸阳供电公司助力“智慧城市”建设
查看>>
OpenDaylight的Helium(氦)版本安装
查看>>
决心书
查看>>
手抄代码1-24
查看>>
深入了解SCN
查看>>
Linux之Web服务(2)Httpd服务配置之二
查看>>
Nginx的安装与负载均衡配置
查看>>