一 理论
分类:
通用爬虫和聚焦爬虫
通用爬虫——主要目的是将互联网上的网页下载到本地,形成一个互联网内容的镜
像备份。尽可能的把互联网上的所有的网页下载下来,放到本地服务器里形成备份,再对这些网页做相关处理(提取关键字、去掉广告),最后提供一个用户检索接口。
聚焦爬虫——是"面向特定主题需求"的一种网络爬虫程序,它与通用搜索引擎爬虫的区别在于:聚焦爬虫在实施网页抓取时会对内容进行处理筛选,尽量保证只抓取与需求相关的网页信息。
二 URL的搜索策略
✓ 基于IP地址搜索策略——
先赋予爬虫一个起始的IP地址,然后根据IP地址递增的方式搜索本
口地址段后的每一个WWW地址中的文档,它完全不考虑各文档中指向
其它Web站点的超级链接地址
✓ 广度优先——
在抓取过程中,在完成当前层次的搜索后,
才进行下一层次的搜索。
使用广度优先策略抓取的顺序为:
A、B、C、D、E、F、H、G、I
✓ 深度优先——目的是要达到叶结点,即那些不包含任何超链接的页面文件
使用深度优先策略抓取的顺序
为:A-F-G、E-H-I、B、C、D
✓ 最佳优先——先计算出URL描述文本的目标网页的相似度,设定一个值,并选取评价得分超过该值的一个或几个URL进行抓取
三 http 基本原理
◼ URL(Uniform Resource Locator),即统一资源定位符——”网址“。对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示。
互联网上的每个文件都有一个唯一的URL,它包含的信息指出文件的位置以及浏览器应该怎么处理它。
◼ hypertext, 超文本。浏览器里面看到的网页就是超文本解析而成,
其网页源代码是一系列html代码,如img表示图片,p指定段落
◼ Http基本原理
http:hyper text transfer protocol,超文本传输协议,网络传输超文本数据到本地浏览器的传送协议,保证高效而准确的传送超文本文档
https : Hyper Text Transfer Protocol over Secure SocketLayer,以安全为目标的http通道,http下加入ssl层
ftp:对大型数据通过路由器输入IP,从一个电脑到另一个电脑转移
sftp,
Smb
◼ Http请求过程
浏览器中输入url后,浏览器向网站所在服务器发送了一个请求,网站服务器接收请求,并对这个请求进行处理和解析,然后返回对应的响应,传回给浏览器,再通过浏览器解析出来
请求:可分为四部分内容:
✓ 请求的网站(request url)
✓ 请求方法(request method)
✓ 请求头(request headers)
✓ 请求体(request body)
请求方法主要分为:get和post请求
get请求:
✓ 请求中的参数包含在url里面
✓ 请求提交的数据最多只有1024字节
✓ 百度中输入关键字,wd表示要搜索的关键字
post请求:
✓ 表单提交时候发起,用户登录
✓ 数据以表单的形式传输,不会体现在url中
✓ 请求提交的数据没有大小限制
✓ 数据传输更安全(参数不会体现在url中)
请求头:用来说明服务器要使用的附加信息,比较重要的信息有cookie,user-agent
请求体:一般承载的内容是post请求中的表单数据,对于get请求,请求体为空