Spider-Python爬虫之聚焦爬虫与通用爬虫的区别
为什么要学习爬虫?
学习爬虫,可以私人订制一个搜索引擎。
大数据时代,要进行数据分析,首先要有数据源。
对于很多SEO从业者来说,从而可以更好地进行搜索引擎优化。
什么是网络爬虫?
模拟客户端发送网络请求,接收请求对应的数据,按照一定的规则,自动抓取互联网信息的程序。 只要是客户端(浏览器)能做的的事情,原则上,爬虫都能做。意思就是,只要人类能够访问的网页,爬虫在具备铜等资源的情况下就一定可以抓取。 爬虫的用途
主要用:途数据采集 其他用途:12306抢票、各种抢购、投票、刷票、短信轰炸、网络攻击、Web漏洞扫描器 爬虫数据的用途
1.金融 金融新闻/数据 制定投资策略,进行量化交易
2.旅游 各类信息 优化出行策略
3.电商 商品信息 比价系统
4.游戏 游戏论坛 调整游戏运营
5.银行 个人交易信息 征信系统/贷款评级
6.招聘 职位信息 岗位信息
7.舆情 各大论坛 社会群体感知,舆论导向 通用爬虫
通用爬虫:搜索引擎用的爬虫系统。搜索引擎和web服务商提供的爬虫。 目标:
就是尽可能的;把互联网上的所有的网页下载下来,放到本地服务器里形成备分,在对这些网页做相关处理(提取关键字、去掉广告),最后提供一个用户检索接口。
抓取流程:
首先选取一部分URL,把这些URL放到待爬取队列。 从队列取出URL,然后解析DNS得到主机IP,然后保存这个IP对应的服务器里下载HTML页面,保存到搜索引擎的本级服务器,之后把这个爬过的url放入已爬过的队列。 分析这些网页内容,找出网页里其他的URL链接,继续执行第二步,知道爬取结束 搜索引擎如何获取一个新网站的URL:
a)主动向搜索引擎提交网站
B)在其他网站里设置外联
C)索引擎会和DNS服务商服务商进行合作,可以快速收录新的网站 DNS把域名解析成IP的一种技术。 通用爬虫并不是万物皆可爬取,他也要遵循规则:
Robots协议:协议会指明通用爬虫可以爬取网页的权限(告诉搜索引擎那些可以抓取,那些不可以抓取) Robots.txt 并不是所有的爬虫都遵守,一般只有大型的搜索引擎爬虫才会遵守 存在位置:robots.txt文件应该放置在网站根目录下 例如:https://www.taobao.com/robots.txt 通用爬虫工作流程:
爬取网页 存储数据 内容处理 提供检索/排名服务 搜索引擎排名:
1.PageRank值:根据网站的流量(点击量/浏览量/人气)统计,流量越高,网站排名越靠前。 2.竞价排名:谁给的钱多,谁排名就高。 通用爬虫的缺点:
1.只能提供和文本相关的内容(HTML、Word、PDF)等等,但是不能提供多媒体文件(音乐、图片、视频)和二进制文件(程序、脚本) 2.提供的结果千篇一律,不等针对不同背景领域的人提供不同的搜索结果 3.不能提供人类语义上的检索 通用搜索引擎的局限性
1.通用搜索引擎所返回的网页里90%的内容无用。 2.中文搜索引擎自然语言检索理解困难 3.信息占有量和覆盖率存在局限。 4.搜索引擎最主要的还是以关键字搜索为主,对于图片、数据库、音频、视频多媒体的内容通用搜索引擎无能为力。 5.搜索引擎的社区化和个性化不好,大多数搜索引擎没有考虑人的地域,性别,年龄的差别 6.搜索引擎抓取动态网页效果不好 解决通用爬虫的缺点,聚焦爬虫出现了。 聚焦爬虫
聚焦爬虫:爬虫程序员写的针对某种内容爬虫。
面向主题爬虫、面向需求爬虫:会针对某种特定的能容去爬取信息,而且保证内容需求尽可能相关。 1.积累式爬虫:从开始到结束,不断爬取,过程中会进行重复操作。 2.增量式爬虫:已下载网页采取增量式更新和只爬取新产生的或者已经发生变化网页爬虫 3.Deep web爬虫:不能通过静态链接获取的、隐藏在搜索表单后的,只有用户提交一些关键词才能获得的web页面
Spider-Python爬虫之聚焦爬虫与通用爬虫的区别的更多相关文章
- (Python爬虫04)了解通用爬虫和聚焦爬虫,还是理论知识.快速入门可以略过的
如果现在的你返回N年前去重新学习一门技能,你会咋做? 我会这么干: ...哦,原来这个本事学完可以成为恋爱大神啊, 我要掌握精髓需要这么几个要点一二三四..... 具体的学习步骤是这样的一二三.... ...
- Python通用爬虫,聚焦爬虫概念理解
通用爬虫:百度.360.搜狐.谷歌.必应....... 原理: (1)抓取网页 (2)采集数据 (3)数据处理 (4)提供检索服务 百度爬虫:Baiduspider 通用爬虫如何抓取新网站? (1)主 ...
- Python 教你 4 行代码开发新闻网站通用爬虫
\ GNE(GeneralNewsExtractor)是一个通用新闻网站正文抽取模块,输入一篇新闻网页的 HTML, 输出正文内容.标题.作者.发布时间.正文中的图片地址和正文所在的标签源代码.G ...
- python爬虫王者荣耀高清皮肤大图背景故事通用爬虫
wzry-spider python通用爬虫-通用爬虫爬取静态网页,面向小白 基本上纯python语法切片索引,少用到第三方爬虫网络库 这是一只小巧方便,强大的爬虫,由python编写 主要实现了: ...
- Python 通用爬虫 和讯博客 scrapy
目标站点需求分析 通用爬虫,获取和讯博客所有博文 涉及的库 scrapy,re,requests,mysql URL RULE 解析单页源码 保存到数据库 结果
- python scrapy 入门,10分钟完成一个爬虫
在TensorFlow热起来之前,很多人学习python的原因是因为想写爬虫.的确,有着丰富第三方库的python很适合干这种工作. Scrapy是一个易学易用的爬虫框架,尽管因为互联网多变的复杂性仍 ...
- 爬虫(十八):Scrapy框架(五) Scrapy通用爬虫
1. Scrapy通用爬虫 通过Scrapy,我们可以轻松地完成一个站点爬虫的编写.但如果抓取的站点量非常大,比如爬取各大媒体的新闻信息,多个Spider则可能包含很多重复代码. 如果我们将各个站点的 ...
- PHP, Python, Node.js 哪个比较适合写爬虫?
PHP, Python, Node.js 哪个比较适合写爬虫? 1.对页面的解析能力2.对数据库的操作能力(mysql)3.爬取效率4.代码量推荐语言时说明所需类库或者框架,谢谢.比如:python+ ...
- 零基础写python爬虫之使用Scrapy框架编写爬虫
网络爬虫,是在网上进行数据抓取的程序,使用它能够抓取特定网页的HTML数据.虽然我们利用一些库开发一个爬虫程序,但是使用框架可以大大提高效率,缩短开发时间.Scrapy是一个使用Python编写的,轻 ...
随机推荐
- 洛谷P1505 [国家集训队]旅游(树剖+线段树)
传送门 这该死的码农题…… 把每一条边变为它连接的两个点中深度较浅的那一个,然后就是一堆单点修改/路径查询,不讲了 这里就讲一下怎么搞路径取反,只要打一个标记就好了,然后把区间和取反,最大最小值交换然 ...
- (DP)51NOD 1183 编辑距离
编辑距离,又称Levenshtein距离(也叫做Edit Distance),是指两个字串之间,由一个转成另一个所需的最少编辑操作次数.许可的编辑操作包括将一个字符替换成另一个字符,插入一个字符,删除 ...
- 【原创】《从0开始学Elasticsearch》—集群健康和索引管理
内容目录 1.搭建Kibana2.集群健康3.索引操作 1.搭建Kibana 正如<Kibana 用户手册>中所介绍,Kibana 是一款开源的数据分析和可视化平台,因此我们可以借助 Ki ...
- python之计数统计
前言: 计数统计,简单的说就是统计某一项出现的次数.实际应用中很多需求都需要用到这个模型,如检测样本中某一值出现的次数.日志分析某一消息出现的频率.分析文件中相同字符串出现的概率等等.以下是实现的不同 ...
- JavaScript--DOM浏览器窗口可视区域大小
浏览器窗口可视区域大小 获得浏览器窗口的尺寸(浏览器的视口,不包括工具栏和滚动条)的方法: 一.对于IE9+.Chrome.Firefox.Opera 以及 Safari: • window.inn ...
- _bzoj1013 [JSOI2008]球形空间产生器sphere【高斯消元】
传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=1013 保存高斯消元模版. ps,这一题的英文名字是ヨスガノソラ的开发商~^_^ #inclu ...
- [USACO 2011 Nov Gold] Cow Steeplechase【二分图】
传送门:http://www.usaco.org/index.php?page=viewproblem2&cpid=93 很容易发现,这是一个二分图的模型.竖直线是X集,水平线是Y集,若某条竖 ...
- jmeter(二)元件的作用域与执行顺序
1.元件的作用域 JMeter中共有8类可被执行的元件(测试计划与线程组不属于元件),这些元件中,取样器是典型的不与其它元件发生交互作用的元件,逻辑控制器只对其子节点的取样器有效,而其它元件(conf ...
- 转】[MySQL优化]为MySQL数据文件ibdata1瘦身
原博文出自于: http://blog.fens.me/category/%E6%95%B0%E6%8D%AE%E5%BA%93/page/2/ 感谢! [MySQL优化]为MySQL数据文件ibda ...
- [转]Android项目快速开发框架探索(Mysql + OrmLite + Hessian + Sqlite)
前言 结合之前所用的ormlite和hessian,再加上SAE已经支持JAVA,把服务端切换到JAVA,也就有了本文.使用hessian来做数据传输,ormlite来实现客户端与服务端的数据存储,极 ...