码迷,mamicode.com
首页 > Windows程序 > 详细

web data scraping的各种解决方案

时间:2014-08-09 18:39:19      阅读:536      评论:0      收藏:0      [点我收藏+]

标签:style   http   java   使用   os   io   文件   数据   

对于互联网人来说,web data scraping (web数据采集)已经成为一个迫切而又实在的需求。在如今这个开源的时代,问题往往不在于是否有解决方案,而是如何选择适合你的解决方案,因为总是有很多潜在的方案供你选择。web data scraping当然也不例外,笔者认为,我们至少有四种类型的方案可以选择,

1. web scraping software

专用的数据采集软件不需要你编写任何代码,你只需要配置一些信息,例如采集的目标网址、兴趣字段等等。然而,学习如何使用这些软件却是一项非常费力的事情,大部分都需要有一定的技术背景,常常需要了解的技术有:xpath, html, regular expression。笔者列举几款这方面的软件如下, 

更多这方面的软件信息,可以参考这份文档: collections of web scraping software and server

 

2. web scraping framework

scraping framework可能是developer的最佳选择,因为其功能强大且效率高,而且有适用于不同平台的framework可供选择,例如:

  • scrapy, python平台
  • upton, ruby平台
  • pismo, ruby平台
  • nokogiri, ruby平台
  • node.io, node.js平台
  • crawler, node.js平台

笔者认为,python在数据处理方面具有强大的优势,更重要的是,python也非常适合实际产品的开发,笔者执着而坚定地推荐scrapy作为web scraping的首选.

 

3. web scraping service

如果你只是想获得数据,而又不愿意劳心费神的去学习具体的scraping技术,那么一家可靠的web scraping service服务商可能是你最好的选择,比较知名的web scraping service有如下几个:

 

4. 其他的选择

Selenium 原本是浏览器自动化测试工具,但是也可以用于web scraping。 如果你采集的网页内容是由javascript自动生成的,那么你可能需要Selenium, 因为其他的scraping方案中的html parser往往都不支持javascript,例如scrapy。另外,有很多网站禁止scraping, 这个时候你也需要Selenium, 因为Selenium完全是模拟人的浏览行为,Selenium本质上是工作于浏览器之上的。

当然,我们也可以选择很多基于javascript的scraping方案,例如PhantomJS 就是一种非常好的选择,PhantomJS本质上也是模拟了浏览器。

web data scraping的各种解决方案,布布扣,bubuko.com

web data scraping的各种解决方案

标签:style   http   java   使用   os   io   文件   数据   

原文地址:http://www.cnblogs.com/datadriver-info/p/3901339.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!