小编说:网络爬虫是一种伴随着互联网诞生与演化的"古老”的网络技术,随着互联网进入大数据时代,爬虫技术迎来了一波新的振兴浪潮。 本文通过企业内部与互联网两个场景向大家讲书爬虫发挥了哪些重要作用。本文选自《虫术——Python绝技》一书。

在大数据架构中,数据收集与数据存储占据了极为重要的地位,可以说是大数据的核心基础。而爬虫技术在这两大核心技术层次中占有了很大的比例。为何有此一说?我们不妨通过一个实际应用场景来看看爬虫到底发挥了哪些作用?

主动——爬虫的重点在于"爬取”(Crawl),这是一种主动性的行为。换句话说,它是一个可以独立运行且能按照一定规则运作的应用程序。

自动化——由于处理的数据可能很分散,数据的存留具有一定的时效性,所以它是一套无人值守的自动化程序。

在我接近20年的IT从业生涯中,企业管理系统是我参与过的项目或产品中占比最大的。在这些项目与产品的开发过程中,我观察到很多企业内部其实有非常多的数据处理场景可以用爬虫技术进行处理,从而能以惊人的效率取代原有的人工化的操作。

以我近年来在电商企业内部所见为例,阿里巴巴(简称阿里)已显现出它在电子商务一统全球的实力与地位,几乎可以将电商与阿里之间划一个等号。阿里为各个店铺和商家提供了各种各样优秀的运营工具。我们会理所当然地认为电商企业内部的信息化管理程度一定很高,不是吗?然而事实恰恰相反,我见过的多数中小型的电商企业甚至是三板挂牌企业内部的信息化水平仍然非常落后,不少企业仍然依赖Excel这样基于大量人力为主导的表格处理。那么问题来了,为何阿里巴巴、京东这些电商平台已经提供了大量优质运营工具,而电商企业的信息化水平却很低,还需要靠劳动密集型的方式进行运营呢?

首先,电商企业不会只在某一平台上开店,通常都会在多个平台同时开多个店铺以拓宽市场的销售渠道;其次,电商企业之间、电商与供货商之间缺乏统一的数据交换标准,通常只依赖于一些技术陈旧的ERP来维持日常的运营。

电商企业通常只能通过某一平台上提供的专用工具监测某些产品的价格波动和销售情况,而无法全面、统一地了解他们所销售的产品在各大平台的具体表现如何。然而这样的需求很明显是迫切的,因为只有了解销售数据的变化才能实时调节销售的策略。我见过最多的做法就是企业安排一位专人从各大电商平台中导出运行的数据,然后合并到Excel中,再进行一番统计,手工做出各种统计报表作为分析依据,这种做法往往对某一个单品就得做一次!

(1)缺乏统一的数据来源——这是不可调和的,因为电商运行的数据源本来就具有多样性。

(2)结构化数据与非结构化数据并存——企业间最常见的数据交互格式是Excel,交互工具是微信和QQ。

(3)一个数据存在多种时间版本——QQ或者微信上的同一个文件修改多了且重复传会出现各种的 data.xlsx、data(1).xlsx…data(n).xlsx。

(4)数据结构可能存在随意性——Excel文件内很少会看见用英文命名的列,甚至相同作用的列很有可能会采用不同的中文名。

(5)数据查找变得困难——在电商企业与供货商之间要找出某个时段相同的数据副本可能是一件极为可怕的事件。

我们不妨来大胆地假设一下,如果将这些事情换成让爬虫去处理,那么情况会变成什么样子呢?

(1)每天爬虫在一个固定的时间到淘宝、京东或者其他电商平台上自动下载商家当前的营业数据。

(3)从内网的某台PC的指定文件夹中下载每天从其他经销商发来的Excel文件,整理后保存到数据库。

(4)发现某些商品库存不足自动生成供货商规定格式的订货单,通过电子邮件发出。

(5)决策者(运营经理/老板)在手机或PC中通过数据可视化工具查看每天的数据统计结果,或者由爬虫系统直接生成统计报表发到他们的邮箱中。

此时你可能会产生这样的疑问:爬虫不是单单爬取数据的吗?为何还能处理这么多的事情呢?这还是爬虫的技术领域吗?答案是肯定的,上面这个例子是由我经历过的一个项目中的真实案例简化而来的,爬虫的这些行为融合了对爬取数据的后处理与Python自动化后得到的效果。其实爬虫能做到的事情可以更多,具体的实现与企业内部的实际需求相关。而在互联网中,它更像是一个具有"智能”的机器人。

企业内网爬虫只是互联网爬虫的一个小范围的应用,是爬虫技术与自动化技术的一种综合性应用,而且自动化技术的占比可能会比爬虫技术手段更多一些。

与企业爬虫相比,互联网爬虫就显得更为单一与常见,在这个数据唾手可得的时代,在数据中用爬虫淘金并不鲜见。如搜索引擎本身就是"虫术大师”,只要是它们想爬的网站,几乎是没有爬不穿的。App Store上最火的内容性App总是某些新闻类的聚合应用,大多数网站开发者都知道那只是一个聚合了各种新闻网站链接的综合性平台,它们的内容也是靠"放虫”才可能在各大新闻门户中获取第一手的新闻信息。更重要的是,这些新闻信息都是"免费”的,任何一个用户都可以轻易地从互联网上获取,这个用户当然也可以包括"虫子”。

互联网中存在大量如新闻资讯一类的免费内容,或是政府、企业、第三方机构、团体甚至个人共享的各种数据。例如,我们可以轻易地到气象局的网站上获取近十年某个地区的降雨量信息,或者从证券交易所获取当天各支股票的价格走势,又或者到微博上获知当天最具有传播性的某个事件的详情。换句话说,只要有清晰的目标数据源,只要你具有对数据源具有访问的权限,那么你也可以让爬虫为你代劳,一次性从数据源上获取所有你想要的数据。

要通过爬虫顺利地从互联网中爬取数据,那么就得了解这些数据的特质,然后采取针对性的手段才可能做到无往不利。一般来说,互联网中可爬取的数据可分为以下几种:

(1)一般性的网页——符合W3C规范的网页都可视为一种半结构化的内容,可以通过一些页面元素分析工具从网页中读取指定数据,由于网页开发的自由度极大,几乎没有哪个网站的结构是完全相同的。而且可变因素也很多,可能网页读取要通过权限的审查,或者网页由客户端的JavaScript进行绘制才能呈现最终效果,甚至网页可能来源于CDN,其内容未必是最新的,只是某个网络缓存的副本,等等。不过不用担心,当你完全掌握了虫术,这一切对你将不再是阻挡。

(2)API资源——API资源是最适合爬取的数据源(没有之一),因为RESTful API都是结构化数据,会以XML或者JSON的形式进行调用或者返回,这些数据内容即使没有API说明手册一般也能读懂。

(3)文件资源——文件资源属于最麻烦的数据源了,除非爬取的文件是以结构化数据格式呈现的,否则作为自由文本,由于是非结构化的,我们需要对文本的内容进行一些后处理,要让爬虫"读懂”这些文本内容,再判断哪些内容是获取的目标。

(4)媒体资源——如图片和视频等,其爬取的动作基本与文件类似,只是由于图片与视频等资源一般来说都比较大,可能还需要对文件的元信息进行一些分析以判断其是否具有爬取的价值,以避免让爬虫过多地消耗不必要的网络流量与爬取时间。

爬虫涉及的技术领域很多,运用的技术也非常庞杂,从基本的网络访问到复杂的机器学习,可能会让初入门径者有望而却步的想法。为了让大家有一个全面的认识,我们特意将初级、中级、高级三个阶段中所要学习与使用的技术归纳成下图以作参考。

互联网最激烈的对抗战场,除了安全专家与黑客之间,大概就是爬虫与反爬虫领域了。据统计,爬虫流量早已超过了人类真实访问请求流量。互联网充斥着形形色色的爬虫,云上、传统行业都有不同规模的用户被爬虫爱好者盯上,这些爬虫从哪里来?爬取了谁的数据?数据将被用于何处? 近日,腾讯云发布2...

演讲|钱致远(星辰资本合伙人)笔记|笔记侠 雷波Raybo编辑|笔记侠 Even欢迎投稿到硅谷堂,投稿联系硅谷君:zs981436532 人物名片:迂回式创新创始人,星辰资本合伙人,互联网+创新导师,被誉为最接地气的实战派创业导师,迂回式创新和精益创业的实战方法论专家。擅长...

(本文发在托比网题为:从B2B发展看物流仓储互联网化的重要性-托比网 "二十一世纪,要么电子商务,要么无商可务!”十多年前比尔·盖茨如是说。今天,虽然已经很难考证盖茨当时所谓的"电子商务(E-Business)”其内涵到底指的是什么,但却几乎可以肯定的是,...

有人因为一个人而爱上一座城,而我却偏偏因为一本书爱上一座城,这样的体验不知大家有没有过?这本书名为《消失的地平线》,里面描述了香格里拉极致理想的生活状态。很想知道这个故事的真实性究竟有多少,现实中的香格里拉又到底是什么样子的。带着这样的疑惑,暗暗下定决心,一定要去走一趟! ...

入营14天、任务14项、两节理论课,收获两位队友,撰写英文介绍一篇,在简书发布第一篇文章。 1行动 总体感受,在训练营训练到现在的首要感觉就是行动起来,学会任务拆分,"有意识”练习的时间付出很重要。在以前从来就么有这么认真写过自己的个人介绍,更别说用英语了。行动...

这天下午,由于心情郁闷,不想做事,我便骑车出去散心。那绿色的麦浪,那蜿蜒的小路上,连吹过耳边的风也都蔫头耷脑地没精神。我停下车,踱步到小河边,站在树荫下,看着开的发亮的油菜花,于是便拿起手机拍照。突然从身后传来了一阵欢快的口哨声和"汪汪汪”的狗叫声。我扭过头想一瞧究竟,于是...

哈哈哈,你出差还是不要带上我了!不好不好!好好工作,攒钱买房哈哈!我最近没有胡思乱想了耶!真好!没啥,现在老板出差。这些天轻松的很!也不轻松吧!反正就是舒服些!现在很爱吃薯片不知道咋回事!不喜欢这个爱好!以前都不喜欢吃零食的!⊙?⊙!想你了喔!反正也是感觉很久没见你了!连馒...

输入这个标题的时,我心惊胆战害怕浪费了这么暖心的标题,一提及"梦想”二字,及熟悉又陌生,小学初中有关梦想的作文,好的坏的线篇,而此刻再次提及时,真的陌生多于熟悉 但对于我从小到大的闺蜜来说,梦想于她而言,清楚明了, 自初中到现在一直执著于她的梦想, ...

本文来自: 老铁博客,转载请保留出处!欢迎发表您的评论

相关标签:爬虫技术

python爬虫有什么实际作用-Python爬虫的作用与地位(附爬虫技术路线图)相关推荐

  1. python爬虫有什么用处-Python爬虫的作用与地位(附爬虫技术路线图)

    小编说:网络爬虫是一种伴随着互联网诞生与演化的"古老"的网络技术,随着互联网进入大数据时代,爬虫技术迎来了一波新的振兴浪潮. 本文通过企业内部与互联网两个场景向大家讲书爬虫发挥了哪 ...

  2. python爬虫的用途_Python爬虫的作用与地位(附python3教程+爬虫技术路线图)

    小编说:网络爬虫是一种伴随着互联网诞生与演化的"古老"的网络技术,随着互联网进入大数据时代,爬虫技术迎来了一波新的振兴浪潮. 本文通过企业内部与互联网两个场景向大家讲书爬虫发挥了哪 ...

  3. 学python需要学数据库吗-学习Python爬虫前,你必须知道的一些工具!

    原标题:学习Python爬虫前,你必须知道的一些工具! 许多小伙伴在学习了一段时间的Python后,开始上手爬虫项目了,作为一个总算掌握了基础,开始向上进阶的Python小白,在做爬虫的时候肯定会遇到 ...

  4. python爬虫赚钱途径-如何利用python爬虫挣钱

    Python爬虫是用Python编程语言实现的网络爬虫,主要用于网络数据的抓取和处理,相比于其他语言,Python是一门非常适合开发网络爬虫的编程语言,大量内置包,可以轻松实现网络爬虫功能.那么使用p ...

  5. python网络爬虫的基本步骤-python爬虫入门需要哪些基础/python 网络爬虫教程

    如何入门 Python 爬虫 入门个吊,放弃 python爬虫入门需要哪些基础 现在之所以有多的小伙伴热衷于爬虫技术,无外乎是因为爬我们做很多事情,比如搜索引擎.采集数据.广告过滤等,以Python为 ...

  6. python爬虫原理-干货|如何入门 Python 爬虫?爬虫原理及过程详解

    前言 Python现在非常火,语法简单而且功能强大,很多同学都想学Python!所以小的给各位看官们准备了高价值Python学习视频教程及相关电子版书籍,欢迎前来领取! "入门"是 ...

  7. Python面试题大全(三):Web开发(Flask、爬虫)

    目录 Web Flask 140.对Flask蓝图(Blueprint)的理解? 141.Flask 和 Django 路由映射的区别? Django 142.什么是wsgi,uwsgi,uWSGI? ...

  8. python selenium采集速卖通_2.不苟的爬虫小教程系列:python爬虫技术栈介绍

    鉴于爬虫初学者们,往往也是编程的初学者,我在这里介绍一套最常用的技术栈,不求多,只求精. 毕竟我们的目标是采集到数据,只要能够成功实现目标的工具就是好工具. 爬虫框架scrapy:该框架是scrapi ...

  9. python爬虫步骤-黑客基础 编写Python爬虫入门步骤

    原标题:黑客基础 编写Python爬虫入门步骤 信息时代,数据就是宝藏.数据的背后隐含着无穷的宝藏,这些宝藏也许就是信息量所带来的商业价值,而大数据本身也将成为桌面上的筹码. 黑客花无涯 带你走进黑客 ...

最新文章

  1. 【cogs 309】香甜的黄油
  2. 哈夫曼编码c语言论文,哈夫曼编码的实现及应用论文.doc
  3. android 8.1没声音,Android 8.1重大改变!耳机孔不见了
  4. codeforces 50A-C语言解题报告
  5. vue怎么获取用户的位置经纬度_vue 实现Web端的定位功能 获取经纬度
  6. jQuery实现轮播图--入门
  7. Android 上哪个更好:除以 2 还是位移 1?
  8. python 等差数列list_Python3基础 list range+for 等差数列
  9. HDU Calling Extraterrestrial Intelligence Again
  10. SPSS25安装教程
  11. 天刀服务器未响应,《天涯明月刀手游》画面卡顿解决办法
  12. ROS教程(七):定时器
  13. JavaCV调用摄像头
  14. android 滚动条 惯性,Android ScrollView取消惯性滚动的方法
  15. Win11怎么打开网络发现?Win11启用网络发现教程
  16. html5 canvas背景特效,HTML5 Canvas炫酷背景动画特效
  17. 机器学习从入门到创业手记-1.2 机器学习的概念
  18. 爬虫爬取站长素材图片 (使用scrapy和imagespipeline)
  19. 基于微信小程序电商平台
  20. ssh连接失败报错:Socket error Event: 32 Error: 10053.

热门文章

  1. 使用win10自带的虚拟光驱挂载ISO镜像文件,并安装QTP
  2. win10优化工具哪个好
  3. python实现excel的10个常用操作
  4. 同济大学计算机网络期末考试题,完整word版,同济大学计算机网络考试题及答案,推荐文档...
  5. No.13软件集成技术
  6. Flutter绘制指南10-手势在绘制中的使用
  7. PCIE总线硬件设计篇
  8. 北电PBX资料_LD 16 外線路由指令設定
  9. plc和单片机及c语言区别,plc和单片机的区别总结
  10. unity animator动画学习(1)