爬虫 第三篇 (语言选择python还是java还是其他)

原创 2015年11月17日 22:57:42

爬虫目前主要开发语言为java、python、c++
有些公司也用go语言(杭州某互联网金融公司)

对于一般的信息采集需要,各种语言差别不大。

  1. c、c++
    搜索引擎无一例外使用C\C++ 开发爬虫,猜想搜索引擎爬虫采集的网站数量巨大,对页面的解析要求不高,部分支持javascript

  2. python
    网络功能强大,模拟登陆、解析javascript,短处是网页解析
    python写起程序来真的很便捷,著名的python爬虫有scrapy等

  3. java
    java有很多解析器,对网页的解析支持很好,缺点是网络部分
    java开源爬虫非常多,著名的如 nutch 国内有webmagic
    java优秀的解析器有htmlparser、jsoup

对于一般性的需求无论java还是python都可以胜任。

如需要模拟登陆、对抗防采集选择python更方便些,如果需要处理复杂的网页,解析网页内容生成结构化数据或者对网页内容精细的解析则可以选择java。


2018年更新

—————————————————–

python流行起来,从某程序员聚集的网站来看 python爬虫教程满天飞。著名的scrapy便是python开发的。
python开发爬虫非常灵活,最适合一次性采集数据,写几行代码就可以把初步结构化的数据库入库。urllib、requests、beautifulsoup等模块可以轻松构建一个基本的采集程序。
使用python时会遇到中文乱码问题,window开发 Linux 部署乱码问题会让你感觉更棘手,最好统一开发部署环境,有钱公司用macbookpro,没钱装个ubuntu。

python遇到复杂的js是表现和java差不多,你都会想自己实现一个浏览器,phantomjs 不够稳定,中介再加上一层selenium 写写demo还可以

也有人用node.js 开发爬虫,自带V8 引擎,乍一看可以推平所有带js 的页面,node本身是为了js 实现后台来设计的,对于信息采集,node和python 和java 没有本质区别,js 引擎和浏览器引擎并不是一个东西,倒是有牛人用开源浏览器实现了一套浏览器采集程序,不过这牛人有时间折腾,一般公司招不到这种人,也没时间给你折腾,即便你折腾出来了,后续也没人接。

chrome的无头浏览器出来了,遇到复杂的js 页面可以少折腾。

最终使用哪种语言开发企业级采集应用,需要考虑多种因素。

主流的还是java和python,

java 比python繁琐,python比java招人难。

node适合做过前端的高手。

爬虫交流群:177655321

关于java爬虫与python爬虫

前言很多人说学习数据挖掘,先从爬虫入手。接触了大大小小的项目后,发现数据的获取是数据建模前的一项非常重要的活儿。在此,我需要先总结一些爬虫的流程,分别有python版的以及java版的。url请求ja...
  • qq_30843221
  • qq_30843221
  • 2016年09月06日 17:34
  • 2553

网络爬虫Java还是Python还是c++?

对这个问题刚才上网查询了下,总结如下! 爬虫目前主要开发语言为java、Python、c++  对于一般的信息采集需要,各种语言差别不大。 c、c++  搜索引擎无一例外使用C\C++ 开发爬虫,猜想...
  • wenhao_ir
  • wenhao_ir
  • 2016年08月22日 15:27
  • 3441

爬虫的常见陷阱以及Java的爬虫思路

前言本文是这篇文章《Java实现爬虫给App提供数据(Jsoup 网络爬虫)》 http://blog.csdn.net/never_cxb/article/details/50524571 的衍生。...
  • never_cxb
  • never_cxb
  • 2016年01月16日 11:05
  • 6474

浅谈java及python爬虫

爬虫,就是把你在网页上能看到的信息通过代码自动获取到本地的过程。 常用框架: java:webmagic,http://webmagic.io/docs/zh/ python:scrap...
  • SayFz
  • SayFz
  • 2017年12月29日 13:09
  • 298

Python实现简单爬虫功能

在我们日常上网浏览网页的时候,经常会看到一些好看的图片,我们就希望把这些图片保存下载,或者用户用来做桌面壁纸,或者用来做设计的素材。...
  • qq_37267015
  • qq_37267015
  • 2017年05月06日 14:08
  • 1077

Java调用Python并传递参数(爬虫8)

前因 最近确实学习了不少的东西。 在两方面的感受最深刻: 一款APP的开发,从前到后的流程原来是这样啊。 每门语言都有它的强大之处,不是它能不能实现,而是你想不想实现。 ...
  • XiaoFengLiuYu
  • XiaoFengLiuYu
  • 2017年04月17日 15:03
  • 5410

Python实战:网络爬虫都能干什么?

@冰蓝  之前在北京买房,谁想房价开始疯长,链家的房价等数据分析只给了一小部分,远远不能满足自己的需求。于是晚上花了几个小时的时间写了个爬虫,爬下了北京所有的小区信息及北京所有小区的所有历史成交记录。...
  • qzc70919700
  • qzc70919700
  • 2017年06月15日 23:21
  • 7098

基于Jsoup实现的简单爬虫

Jsoup 概念 jsoup 是一款Java 的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出...
  • WuZuoDingFeng
  • WuZuoDingFeng
  • 2016年12月09日 15:19
  • 1907

使用Jsoup对HTML进行解析

貌似解析HTML的工具名字都是XXsoup,比如python的beautifulsoup,这里介绍一下java的Jsoup。我这里只说我使用的感受。 Jsoup可以解析服务器上的、本地的HTML文件...
  • benbmw2008
  • benbmw2008
  • 2012年08月13日 17:15
  • 1384

使用Jsoup解析和操作HTML

jsoup 简介 jsoup 是一款 Java 的HTML 解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法...
  • chenleixing
  • chenleixing
  • 2015年07月29日 08:52
  • 11980
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:爬虫 第三篇 (语言选择python还是java还是其他)
举报原因:
原因补充:

(最多只允许输入30个字)