抓取网页数据工具(关于完全免费的金色数据采集器开源项目,你了解多少?)

优采云 发布时间: 2021-09-11 10:12

  抓取网页数据工具(关于完全免费的金色数据采集器开源项目,你了解多少?)

  GoldDataSpider 简介

  Golden Data采集器开源项目是一个抓取网页和提取数据的工具。核心代码与黄金数据平台分离。

  该项目提供从网页中抓取和提取数据。不仅可以提取网页内容,还可以提取URL、HTTP头、Cookie中的数据。

  该项目定义了简洁、灵活和敏捷的结构或规则语法。尽量从网页内容、HTTP头、cookies,甚至其他网页,以及其他网站数据中提取有意义的、有价值的数据字段,形成数据记录。另外,可以嵌入http请求来补充数据字段。比如有些字段需要提供翻译字段给字典等等。

  该项目还可以支持从各种类型的文档中提取数据,例如html/xml/json/javascript/text等

  关于完全免费的黄金数据社区版

  金数据平台社区版是一款完全不受爬虫限制(如私有云爬虫数量不限、爬取速度/时间、数据爬取数量、导出数据数量不限)软件,

  我们免费提供金数据平台的详细文档和培训视频,请点击此处查看和使用。

  开始

  首先我们需要在项目中添加依赖(因为我们已经将项目添加到了maven中央仓库),如下:

  1、对于 maven 项目

  

com.100shouhou.golddata

golddata-spider

1.1.3

  2、对于 gradle 项目

   compile group: 'com.100shouhou.golddata', name: 'golddata-spider', version: '1.1.3'

  然后就可以使用依赖提供的简洁明了的API,如下:

  @Test

public void testGoldSpider(){

String ruleContent=

" { \n"+

" __node: li.sky.skyid \n"+

" date: \n"+

" { \n"+

" expr: h1 \n"+

" __label: 日期 \n"+

" } \n"+

" sn: \n"+

" { \n"+

" \n"+

" js: md5(baseUri+item.date+headers['Content-Type']);\n"+

" } \n"+

" weather: \n"+

" { \n"+

" expr: p.wea \n"+

" } \n"+

" temprature: \n"+

" { \n"+

" expr: p.tem>i \n"+

" } \n"+

" } \n";

GoldSpider spider= com.xst.golddata.GoldSpider.newSpider()

.setUrl("http://www.weather.com.cn/weather/101020100.shtml")

.setRule(ruleContent)

.request();

List list=spider.extractList();

// List weathers=spider.extractList(Weather.class);

// Weather weathers=spider.extractFirst(Weather.class);

list.forEach( System.out::println);

}

  运行上面的测试,你会看到类似下面的输出:

  {date=19日(今天), weather=阴转小雨, temprature=10℃, sn=8bc265cb2bf23b6764b75144b255d81d}

{date=20日(明天), weather=小雨转多云, temprature=11℃, sn=9efd7e7bbbfb9bb06e04c0c990568bfd}

{date=21日(后天), weather=多云转中雨, temprature=11℃, sn=728539ac882721187741708860324afa}

{date=22日(周六), weather=小雨, temprature=9℃, sn=a23fa2233e750a3bdd11b2e200ed06c3}

{date=23日(周日), weather=小雨转多云, temprature=8℃, sn=b27e1b8a8e92a7bed384ceb3e4fdfb5f}

{date=24日(周一), weather=多云转小雨, temprature=8℃, sn=c142b7fd12330ca031dd96b307c0d50d}

{date=25日(周二), weather=小雨转中雨, temprature=6℃, sn=16f71d3c8f09394588532a3ed1a8bacf}

  用作服务或 API

  您可以将其用作项目中的调用服务和 API。例如:

  @Service

public class WeatherServiceImpl implements WeatherService{

public List listByCityId(Long cityId){

String url="http://www.weather.com.cn/weather/"+cityId+".shtml"

String rule=""

GoldSpider spider= com.xst.golddata.GoldSpider.newSpider()

.setUrl(url)

.setRule(ruleContent)

.request();

return spider.extractList(Weather.class);

}

}

  此外,您可以免费使用可视化编辑器来编辑规则的内容。可视化编辑器来自黄金数据平台。您可以点击链接下载。可视化编辑器截图如下:

  

  文档和培训视频

  请点击此处查看规则和文件的内容

  许可证

  Golddata-Spider 采用 Apache License,版本 2.0 协议。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线