爬虫

网络爬虫(又被称为网页蜘蛛,网络机器人)就是模拟浏览器发送网络请求,接收请求响应,一种按照一定的规则,自动地抓取互联网信息的程序。
原则上,只要是浏览器(客户端)能做的事情,爬虫都能够做。

为什么我们要使用爬虫

互联网大数据时代,给予我们的是生活的便利以及海量数据爆炸式的出现在网络中。
过去,我们通过书籍、报纸、电视、广播或许信息,这些信息数量有限,且是经过一定的筛选,信息相对而言比较有效,但是缺点则是信息面太过于狭窄了。不对称的信息传导,以致于我们视野受限,无法了解到更多的信息和知识。
互联网大数据时代,我们突然间,信息获取自由了,我们得到了海量的信息,但是大多数都是无效的垃圾信息。
例如新浪微博,一天产生数亿条的状态更新,而在百度搜索引擎中,随意搜一条——减肥100,000,000条信息。
在如此海量的信息碎片中,我们如何获取对自己有用的信息呢?
答案是筛选!
通过某项技术将相关的内容收集起来,在分析删选才能得到我们真正需要的信息。
这个信息收集分析整合的工作,可应用的范畴非常的广泛,无论是生活服务、出行旅行、金融投资、各类制造业的产品市场需求等等……都能够借助这个技术获取更精准有效的信息加以利用。
网络爬虫技术,虽说有个诡异的名字,让能第一反应是那种软软的蠕动的生物,但它却是一个可以在虚拟世界里,无往不前的利器。

问题概述

python语言发展中有一个里程碑式的应用事件,即美国谷歌公司在搜索引擎后端采用python语言进行链接处理和开发,这是该语言发展成熟 的重要标志。python语言的简洁性和脚本特点非常适合链接和网页处理,因此,在python的计算生态中,与URL 和网页处理相关的第三方库很多。

万维网(WWW)的快速发展带来了大量获取和提交网络信息的需求,这产生了“网络爬虫”等一系列应用。python语言提供了许多类似的函数库,包括urllib,urllib2,urillb3,wget,scrapy,requests等。这些库作用不同,使用方式不同,用户体验不同。对于爬取回来的网页内容,可以通过re(正则表达式),beautifulsoup4等函数库来处理。

除了网络爬虫,自动向网站提交数据既有趣又有用,这样的功能也能通过requests库实现。

网络爬虫一般分为两个步骤:1.通过网络链接获取网页内容;2.对获得的网页内容进行处理。这两个步骤分别使用不同的函数库:requests和beautiful soup4.

采用pip指令安装requests库,如果在python2和python3 并存的系统中,采用pip3指令,代码如下;

:/>pip install requests   #或者 pip3 install requests

采用pip或pip3指令安装beautifulsoup4库,注意,不要安装beautiful soup库,后者由于年久失修,已经不再维护了。安装命令如下:

:/>pip install beautifulsoup4 #或者pip3 install beautifulsoup4

使用python语言实现网络爬虫和信息提交是非常简单的事情,代码行数很少,也无须掌握网络通信等方面的知识,非常适合非专业读者使用。然而,肆意地爬取网络数据并不是文明现象,通过程序自动提交内容争取竞争性资源也不公平。就像那些肆意的推销电话一样,他们无视接听者志愿,不仅令人讨厌也有可能引发法律纠纷。

拓展:Robots排除协议

Robots排除协议(Robots Exclusion Protocol),也被称为爬虫协议,它是网站管理者表达是否希望爬虫自动获取网络信息意愿的方法。管理者可以在网站根目录放置一个robots.txt文件,并在文件中列出哪些链接不允许爬虫爬取。一般搜索引擎的爬虫会首先捕获这个文件,并根据文件要求爬取网站内容。Robots排除协议重点约定不希望爬虫获取的内容,如果没有该文件则表示网站内容可以被爬虫获得,然而,Robots协议不是命令和强制手段,只是国际互联网的一种通用道德规范。绝大部分成熟的搜索引擎爬虫都会遵循这个协议,建议个人也能按照互联网规范要求合理使用爬虫技术。

python 爬虫(一)相关推荐

  1. 关于Python爬虫原理和数据抓取1.1

    为什么要做爬虫? 首先请问:都说现在是"大数据时代",那数据从何而来? 企业产生的用户数据:百度指数.阿里指数.TBI腾讯浏览指数.新浪微博指数 数据平台购买数据:数据堂.国云数据 ...

  2. python爬虫之Scrapy框架的post请求和核心组件的工作 流程

    python爬虫之Scrapy框架的post请求和核心组件的工作 流程 一 Scrapy的post请求的实现 在爬虫文件中的爬虫类继承了Spider父类中的start_urls,该方法就可以对star ...

  3. python爬虫抓取信息_python爬虫爬取网上药品信息并且存入数据库

    我最近在学习python爬虫,然后正好碰上数据库课设,我就选了一个连锁药店的,所以就把网上的药品信息爬取了下来. 1,首先分析网页 2,我想要的是评论数比较多的,毕竟好东西大概是买的人多才好.然后你会 ...

  4. python爬虫案例_推荐上百个github上Python爬虫案例

    现在学生都对爬虫感兴趣,这里发现一些好的github开源的代码,分享给各位 1.awesome-spider 该网站提供了近上百个爬虫案例代码,这是ID为facert的一个知乎工程师开源的,star6 ...

  5. Python培训分享:python爬虫可以用来做什么?

    爬虫又被称为网络蜘蛛,它可以抓取我们页面的一些相关数据,近几年Python技术的到来,让我们对爬虫有了一个新的认知,那就是Python爬虫,下面我们就来看看python爬虫可以用来做什么? Pytho ...

  6. 玩转 Python 爬虫,需要先知道这些

    作者 | 叶庭云 来源 | 修炼Python 头图 | 下载于视觉中国 爬虫基本原理 1. URI 和 URL URI 的全称为 Uniform Resource Identifier,即统一资源标志 ...

  7. 买不到口罩怎么办?Python爬虫帮你时刻盯着自动下单!| 原力计划

    作者 | 菜园子哇 编辑 | 唐小引 来源 | CSDN 博客 马上上班了,回来的路上,上班地铁上都是非常急需口罩的. 目前也非常难买到正品.发货快的口罩,许多药店都售完了. 并且,淘宝上一些新店口罩 ...

  8. 一个月入门Python爬虫,轻松爬取大规模数据

    如果你仔细观察,就不难发现,懂爬虫.学习爬虫的人越来越多,一方面,互联网可以获取的数据越来越多,另一方面,像 Python这样一个月入门Python爬虫,轻松爬的编程语言提供越来越多的优秀工具,让爬虫 ...

  9. Python爬虫获取文章的标题及你的博客的阅读量,评论量。所有数据写入本地记事本。最后输出你的总阅读量!

    Python爬虫获取文章的标题及你的博客的阅读量,评论量.所有数据写入本地记事本.最后输出你的总阅读量!还可以进行筛选输出!比如阅读量大于1000,之类的! 完整代码在最后.依据阅读数量进行降序输出! ...

  10. Python爬虫破解有道翻译

    有道翻译是以异步方式实现数据加载的,要实现对此类网站的数据抓取,其过程相对繁琐,本节我以有道翻译为例进行详细讲解. 通过控制台抓包,我们得知了 POST 请求的参数以及相应的参数值,如下所示: 图1: ...

最新文章

  1. 学习 WCF (4)--学会使用配置文件
  2. 小、快、灵:康宁称雄光通信市场的秘诀
  3. text determination debug screenshot
  4. iOS-数据持久化-偏好设置
  5. 分布式事务解决方案——柔性事务与服务模式
  6. 【人工智能】深度学习专项课程精炼图笔记!必备收藏
  7. IMF:央行须变得更像苹果公司以保证央行数字货币处在技术前沿
  8. 内容编辑器在MOSS中的应用
  9. project软件_Project软件操作篇——第三篇 优化计划
  10. 修改Android序列号(Serial Number)
  11. 基于R语言结构方程模型
  12. 我为什么既支持又反对接口用Map来传输数据?
  13. 大天使之剑服务器维修公告,大天使之剑————【维护】8月17日更新维护公告...
  14. 用dRING设置特定日期提醒
  15. js生成二维码,web页面,移动h5页添加微信qq分享功能
  16. IPSEC ×××连连看
  17. Swing是一把很菜的刀
  18. 电子硬件1.DTE/DCE/DB9
  19. Filmic Tonemapping rocks
  20. 思维导图MindManager的文件格式与例图

热门文章

  1. 达内 JAVA UI设计 网络营销 嵌入式 正版高清全套视频
  2. vue表单校验一直不通过
  3. QTP的那些事--最新特性总结和支持chrome浏览器
  4. PHP:访问 HTTP(s) 网址
  5. python technique
  6. 北京中辰锐博计算机保密检查大师单机版V3.0
  7. usb阅读笔记-----USB设备被识别流程
  8. 【matlab】关于遗传算法工具箱GAOT 改成可设置的交叉概率和变异概率
  9. [cs231n] Softmax Classifier/ SVM
  10. Java在线编译运行示例