requests
requestse基本使用
关于requests基本使用方法参照中文版参考文档:
response.text 和response.content的区别
1 | response.text |
requests使用代理
1 | requests.get("http://www.baidu.com", proxies = proxies) |
代理的基本原理
正向代理与反向代理
正向代理:浏览器明确知道要访问的是什么服务器,只不过目前无法达到,需要通过代理来帮助完成这个请求操作。
反向代理:浏览器不知道任何关于要请求的服务器的信息,需要通过Nginx请求。
requests模拟登录的几种方法
实例化session,使用session发送post/get请求登录后的页面
1
2session = requests.session()
response = session.get(url,headers)在headers中添加cookie键,值为cookie字符串
在请求方法中添加cookie参数,接收字典形式的cookie
cookie和session区别
- cookie数据存放在客户的浏览器上,session数据放在服务器上
- cookie不是很安全,别人可以分析存放在本地的cookie并进行cookie欺骗
- session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能
- 单个cookie保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20个cookie
requests的几个小技巧(我认为的)
1 | #把cookie对象转化为字典 |
通用的解析链接函数
1 | # coding=utf-8 |
json
json的基本使用
1 | json.loads() #json字符串转化为python数据类型 |
什么是类文件对象?
具有read()或者write()方法的对象就是类文件对象,f = open(“a.txt”,”r”) f
就是类文件对象
如何优雅的查看json?
我们经常在打印json数据的时候会遇到,像下图这样的情况
我们只要在打印的时候使用pprint
就可以完美避开这种情况了,效果如下:
我们想要实现上图只需要pip install pprint
并在打印时使用pprint
即可,而在保存时只需要添加”indent=2”参数,就可以保存为pprint的样式。