文档章节

Python即时网络爬虫项目启动说明

fullerhua
 fullerhua
发布于 2016/05/11 18:06
字数 891
阅读 547
收藏 1

      

        作为酷爱编程的老程序员,实在按耐不下这个冲动,Python真的是太火了,不断撩拨我的心。

        我是对Python存有戒备之心的,想当年我基于Drupal做的系统,使用php语言,当语言升级了,推翻了老版本很多东西,不得不花费很多时间和精力去移植和升级,至今还有一些隐藏在某处的代码埋着雷。我估计Python也避免不了这个问题(其实这种声音已经不少,比如Python 3 正在毁灭 Python)。

        但是,我还是启动了这个Python即时网络爬虫项目。我用C++、Java和Javascript编写爬虫相关程序超过10年,要追求高性能,非C++莫属,同时有完善的标准体系,让你和你的系统十分自信,只要充分测试,就能按照预期的方式运行。在GooSeeker项目中,我们不断向一个方向努力——“收割数据”,而且让广大用户(不仅是专业的数据采集用户)都能体验到收割互联网数据的快感。“收割”的一个重要含义就是大批量。现在,我要启动“即时网络爬虫”,目的是要补充“收割”没有覆盖的场景,我看到的是:

  • 在系统层面:“即时”代表快速部署数据应用系统
  • 在数据流层面:“即时”代表采集数据到数据使用是即时的,单个数据对象可以独自全流程处理,不用等待一批存入数据库,然后从数据库中拿出来用
  • “即时”另一个含义就是网络爬虫是一个嵌入模块,跟整个信息处理系统集成在一起

        一众程序员都在玩Python网络爬虫,我拟定了一个计划:建立一个模块化更强的软件部件,专门解决最耗费精力的内容提取问题(有人总结说大数据和数据分析整个链条上,数据准备占了80%工作量,我们不妨延展一下,网络数据抓取的工作量有80%是在为各种网站的各种数据结构编写抓取规则)。

        我把他想象成一个小机器(见上图),输入的是原始网页,输出的是提取出来的结构化的内容,这个小机器还有一个可替换部件:将输入转化成输出结构的一个指令块,我们成为“提取器”,让大家不再为调试正则表达式或者XPath而苦恼。

        这是一个开放的项目,两年前启动了一个手机上的即时网络爬虫项目,因为是给某商业集团开发的,所以不便开放,同样的思想和方法将开放到这个项目中,而且用当前最热的python来做,希望大家能共同参与。在执行过程中,我们会开放所有资料和成果、已经遇到的坑。

近期做的实验是

© 著作权归作者所有

共有 人打赏支持
fullerhua
粉丝 82
博文 35
码字总数 35735
作品 0
深圳
程序员
加载中

评论(1)

x
xiatiandefeng
写的很不错,学习了0
分享一个免费好用的云端爬虫开发平台
http://www.shenjianshou.cn/
2个月精通Python爬虫——3大爬虫框架+6场实战+分布式爬虫,包教包会

阿里云大学在线工作坊上线,原理精讲+实操演练,让你真正掌握云计算、大数据技能。 在第一批上线的课程中,有一个Python爬虫的课程,畅销书《精通Python网络爬虫》作者韦玮,带你两个月从入门...

云木西
06/27
0
0
5个python爬虫教材,让小白也有爬虫可写,含视频教程!

认识爬虫   网络爬虫,如果互联网是一张蜘蛛网,网络爬虫既是一个在此网上爬行的蜘蛛,爬了多少路程即获取到多少数据。 python写爬虫的优势   其实以上功能很多语言和工具都能做,但是用...

柯西带你学编程
06/12
0
0
月薪20K的Python程序员2018年Python学习进阶书籍推荐

用了python,与太阳肩并肩,本文与大家分享一些Python编程语言的入门书籍,其中不乏经典。以下书籍已经经中心多位编辑老师进行详细阅读后才整理出来供大家学习!推荐下大数据技术学习群:8050...

加米谷
07/09
0
0
高手问答第 202 期 —— 想要玩转 Python?不妨从 Python 网络爬虫开始

OSCHINA 本期高手问答(2018 年 6 月 20 日 — 6 月 26 日)我们邀请到了黄永祥@XyHJw 和大家一起讨论关于 Python 爬虫的问题。 黄永祥,信息管理与信息系统专业学士,曾从事过系统开发和自动化...

局长
06/19
0
0
斯坦福教授教你从0到1的逆袭之路,Python改变你的学习方式

随着机器学习的兴起,Python 逐步成为了「最受欢迎」的语言。它简单易用、逻辑明确并拥有海量的扩展包,因此其不仅成为机器学习与数据科学的首选语言,同时在网页、数据爬取可科学研究等方面...

诸葛青云999
08/24
0
0

没有更多内容

加载失败,请刷新页面

加载更多

OSChina 周六乱弹 —— 到底谁是小公猫……

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @莱布妮子:分享Trivium的单曲《Throes Of Perdition》 《Throes Of Perdition》- Trivium 手机党少年们想听歌,请使劲儿戳(这里) @小鱼丁:...

小小编辑
今天
160
3
基础选择器

注意:本教程参考自网上流传的李兴华老师的jquery开发框架视频,但是苦于没有相应的配套笔记,由我本人做了相应的整理. 本次学习的内容 学习jquery提供的各种选择器的使用,掌握了jquery选择...

江戸川
今天
1
0
Spring中static变量不能@value注入的原因

今天本想使用@Value的方式使类中的变量获得yml文件中的配置值,然而一直失败,获得的一直为null。 类似于这样写的。 public class RedisShardedPool { private static ShardedJedisPool pool...

钟然千落
今天
2
0
CentOS7防火墙firewalld操作

firewalld Linux上新用的防火墙软件,跟iptables差不多的工具。 firewall-cmd 是 firewalld 的字符界面管理工具,firewalld是CentOS7的一大特性,最大的好处有两个:支持动态更新,不用重启服...

dingdayu
今天
1
0
关于组件化的最初步

一个工程可能会有多个版本,有国际版、国内版、还有针对各种不同的渠道化的打包版本、这个属于我们日常经常见到的打包差异化版本需求。 而对于工程的开发,比如以前的公司,分成了有三大块业...

DannyCoder
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部