为什么很多爬虫用python,用PHP不行吗?

1

啥语言都差不多,python也不见得时间效率上有多快,只是python一早被贯上爬虫的名头而已。。再说,大部分所谓的爬虫都是循环分翻页,解析数据的基本流程,哪个语言都能轻易完成。

2



主要看你定义的“爬虫”干什么用。

1、如果是定向爬取几个页面,做一些简单的页面解析,爬取效率不是核心要求,那么用什么语言差异不大。当然要是页面结构复杂,正则表达式写得巨复杂,尤其是用过那些支持xpath的类库/爬虫库后,就会发现此种方式虽然入门门槛低,但扩展性、可维护性等都奇差。因此此种情况下还是推荐采用一些现成的爬虫库,诸如xpath、多线程支持还是必须考虑的因素。

2、如果是定向爬取,且主要目标是解析js动态生成的内容,页面内容是有js/ajax动态生成的,用普通的请求页面->解析的方法就不管用了,需要借助一个类似firefox、chrome浏览器的js引擎来对页面的js代码做动态解析。此时,推荐考虑casperJS+phantomjs或slimerJS+phantomjs ,当然诸如selenium之类的也可以考虑。

3、如果爬虫是涉及大规模网站爬取,效率、扩展性、可维护性等是必须考虑的因素时候,涉及诸多问题:I/O机制、分布式爬取、多线程并发、消息通讯、判重机制、任务调度等等,此时候语言和所用框架的选取就具有极大意义了。

PHP:对多线程、异步支持较差,不建议采用。

3

python有许多第三方包,有专用的框架,有大量开发者案例,小到单个简单网页抓取,大到分布式爬虫,python都能给你实现。

4

基本上什么语言都可以写爬虫,对比php,java,c#这几种语言,python只是语法简单,开发效率高。

5

python在这快的有优秀框架,相对来说不用关心底层的异常,只需要关注上层逻辑就可以了。所有的需要都可以来做爬虫,只是工作量的大小了

6

php也是可以做爬虫的,而且在网页展现上来说,比python还要方便!之所以用python做爬虫,很多时候还兼顾了一个问题,就是大数据处理!爬下来的数据还能顺便做分析。


另外就是,php属于服务器语言,单从环境的架设上来说,会比python复杂。虽然说现在很多一键搭建的软件可以快速的搭建php运行环境,但是在性能和维护上,我们并没办法把控。


而python就相对简单了许多,官方有相应的版本,完了还可以通过pip很容易的下载到各种需要的模块。再加上今年来python大火,各种各样的教程也层出不穷,各种功能的实现方法也被许多高手们分享出来。所以整个生态环境非常好,学习轻松,想实现的功能也很多例子。大大降低了开发成本。

关于作者: 网站小编

码农网专注IT技术教程资源分享平台,学习资源下载网站,58码农网包含计算机技术、网站程序源码下载、编程技术论坛、互联网资源下载等产品服务,提供原创、优质、完整内容的专业码农交流分享平台。

热门文章