pyhon3爬虫
1.缺点:解释性语言;执行效率低
2.优点:网络接口简单医用:系统自带urllib,第三方requets都很简单
数据解析容易:正则表达:re
lxml:使用xpath语法快速提取数据
Beauitful Soup使用简介的代码提取需要的数据
解析性脚本语言代码灵活:非常适合开发聚焦爬虫,每一个网站爬虫策略都不太一样,需要修改代码。
上手快:python爬虫相关资料很多,遇到问题很容易找到解决方案
有很成熟稳定爬虫框架:Scrapy
filddler抓包工具
filddler 是以款强大的web调试工具又称抓包工具。
下载官网: www.telerik.com
百度网盘:https://pan.baidu.com/s/1UIZGEVotHSlt-ZHVpwIWWg?pwd=8888
robots.txt 文件
例如python官网:https://www.python.org/robots.txt
User-agent: Krugle 网站爬虫搜索引擎
Allow: / 允许爬取的路径
Disallow: /~guido/orlijn/ 不允许爬取的路径
Sitemap.xml 文件
记录网站的url更新时间
反爬虫
反爬虫及应对策略
第一种
1. 反爬:通过User—Agent判断是否爬虫,如果是就限制访问
2. 反对:反对伪造User-Agent,模范成为一个知名浏览器发送请求
第二种
1.反爬:如果同一个IP发送的频率过高,就进行限制
2.反对:使用代理Ip进行访问
3.反对:降低访问频率
第三种
1.反爬:发现IP访问异常,让你输入验证码
2.反对:使用打码平台来识别验证码
爬虫测试
# 导入request模块
import urllib.request
# 发送url请求获取响应
response=urllib.request.urlopen('http://www.baidu.com/')
#从响应对象中读取数据
content=response.read()
#对二进制数据进行解码
#decode() 默认使用UTF-8解码
html=content.decode()
print(html)