Python爬虫笔记
1.Cookies构建: 字典格式,使用函数
cookie = dict(cookies_are = 'text')
2.请求头构建: 构建成字典格式
header = {'User-Agent':'UA','Referer':'address','Host':'host name','DNT':'num'}
【Python爬虫笔记】3.requests.get方法: requests的get方法是最常见的请求方法
res = requests.get(url,cookies = cookie,headers = header)
- 解码编码
res.encoding = 'utf-8/gb-2312'
- 获取响应中的cookie或headers
res.cookies
res.headers
- 获取响应的html源码
res.text
- 获取响应中的二进制数据(图片等)
from io import BytesIO
res.content
i = Image.open(BytesIO(r.content))
- 获取响应中的json数据
res.json()
4.requests.post方法
post方法相对于get方法可以传递更复杂的参数,使用 参数data
#构建data参数
dat = (('key1', 'value1'), ('key1', 'value2'))
#构建post请求
r = requests.post('http://httpbin.org/post', data=https://www.it610.com/article/dat)
5.使用代理
代理可单独储存,调用时以 proxies参数 传入
proxy = {
'http': '120.25.253.234:812',
'https' '163.125.222.244:8123'
}
req = requests.get(url, headers=heads,proxies=proxy)
6.会话维持
使用 session函数 维持会话,并请求页面,代码如下:
session = requests.Session()
session.get('http://httpbin.org/cookies/set/number/12345')
response = session.get('http://httpbin.org/cookies')
- ses = requests.Session()#创建会话对象
- ses.requests.headers.update({'User-Agent':"UA"})#构建请求头
- ses.get(url) Or ses.post(url,data)#使用session请求数据
- 注: Session()函数具有Requests函数的所有功能, 但方法级别的参数若未在会话对象中则不能跨请求传递
- 单符号分割
txt_1 = txt.split('symbol')
- 多符号分割
txt_1 = txt.split('symbol_1').split('symbol_2)
推荐阅读
- EffectiveObjective-C2.0|EffectiveObjective-C2.0 笔记 - 第二部分
- python学习之|python学习之 实现QQ自动发送消息
- Android中的AES加密-下
- 逻辑回归的理解与python示例
- python自定义封装带颜色的logging模块
- 【Leetcode/Python】001-Two|【Leetcode/Python】001-Two Sum
- 【读书笔记】贝叶斯原理
- 【韩语学习】(韩语随堂笔记整理)
- Python基础|Python基础 - 练习1
- Python爬虫|Python爬虫 --- 1.4 正则表达式(re库)