# 第三方模块
[TOC]
---
## [requests][1]
[1]: http://docs.python-requests.org/zh_CN/latest/user/quickstart.html
```python
import requests
r = requests.get('https://www.douban.com/') # 豆瓣首页
r.status_code # 200
r.text # 内容
r = requests.get('https://www.douban.com/search', params={'q': 'python', 'cat': '1001'})
r.url # 实际请求的URL
r.encoding # 查看编码
r.content # 获得二进制消息体
r.json() # 直接获取json
r.headers # 获取响应头
r.cookies # 获取cookie
# 传入cookie
cs = {'token': '12345', 'status': 'working'}
r = requests.get(url, cookies=cs)
# 指定超时
r = requests.get(url, timeout=2.5)
# 传入headers
r = requests.get('https://www.douban.com/', headers={'User-Agent': 'Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit'})
# post请求 默认使用application/x-www-form-urlencoded对POST数据编码
r = requests.post('https://accounts.douban.com/login', data={'form_email': 'abc@example.com', 'form_password': '123456'})
# 内部自动序列化为JSON
params = {'key': 'value'}
r = requests.post(url, json=params)
# 上传文件,务必使用'rb'即二进制模式读取,这样获取的bytes长度才是文件的长度
upload_files = {'file': open('report.xls', 'rb')}
r = requests.post(url, files=upload_files)
# 把post()方法替换为put(),delete()等,就可以以PUT或DELETE方式请求资源。
```
## Pillow
图片处理库
## chardet
检测字符串编码
## psutil (process and system utilities)
自动化运维相关