我的第四篇爬虫博客《网络爬虫请求模块二》

请求方式:

1.get特点:查询参数在url地址中显示

2.post:

在Request方法中添加data参数urllib.request.Request(url,data=data,headers=headers)

data:表单数据以bytes类型提交,不能是str

用urllib发送post请求制作一个有道小翻译

我的第四篇爬虫博客《网络爬虫请求模块二》_第1张图片

用request模块发送post请求制作一个有道小翻译

我的第四篇爬虫博客《网络爬虫请求模块二》_第2张图片

requests模块

换源安装requests

pip install requests -i https://pypi.douban.com/simple

我的第四篇爬虫博客《网络爬虫请求模块二》_第3张图片

requests常用方法:requests.get(url) 发起请求

requests响应对象(reponse)的方法

1.response.text 返回unicode格式的数据(str)
2.response.content返回字节流(二进制编码)(是直接从网站上抓取的数据,没有做任何处理的编码)
3.response.text就是request模块把response.content进行解码得到的字符串, request模块它会随机猜选一种解码方式,所以reponse.text可能会出现乱码
4.response.encoding='utf-8‘ response.text就很稳定,不会出现乱码
5.response.content.decode(‘utf-8’)手动解码,比较文档,不会出现乱码

我的第四篇爬虫博客《网络爬虫请求模块二》_第4张图片

设置代理ip

解决什么问题?解决的是一种封ip的反爬机制

设置代理 代理服务的ip

代理ip的作用

1.隐藏真实的ip

2.反反爬

如何去找代理ip?

1.免费的ip(几乎用不了)

2.付费的ip(快代理)

匿名度:

1.透明:它知道你真实的ip,也知道你使用了代理ip

2.匿名:它知道你使用了代理ip,但不知道你真实的ip

3.高匿:不知道你使用了代理ip,也不知道你真实的ip

我的第四篇爬虫博客《网络爬虫请求模块二》_第5张图片

httpbing.org/ip (能返回ip地址)

使用proxy设置代理ip

proxy = {‘类型’:‘代理ip地址:端口号’}

我的第四篇爬虫博客《网络爬虫请求模块二》_第6张图片

cookie

cookie在爬虫当中有什么作用?

1.反反爬

2.摹拟登录

模拟登录人人网

我的第四篇爬虫博客《网络爬虫请求模块二》_第7张图片

反反爬

遇到ajax加载的数据或动态网页的数据(数据不在源码中)

解决方式一:可以在Network中分析它的数据接口(分析12306案例)headers={‘user-agent’:’’,‘cookie’:’’}

我的第四篇爬虫博客《网络爬虫请求模块二》_第8张图片

解决方式二:可以通过selenium来获取数据

处理不被信任的SSL证书

SSL证书,是数字证书的一种,遵守的是SSL协议

res.get(url,verify=False)可以爬取不被信任网址的信息

我的第四篇爬虫博客《网络爬虫请求模块二》_第9张图片
我的第四篇爬虫博客《网络爬虫请求模块二》_第10张图片

你可能感兴趣的:(爬虫,python)