博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java爬虫框架webmagic
阅读量:5342 次
发布时间:2019-06-15

本文共 761 字,大约阅读时间需要 2 分钟。

  最近需要爬去网站的一些商品,就开始在网上找方法,本来是想着用Python做的,因为以前用Python写过一个小脚本,爬取一个文献网站上的免费文献.

    步骤大概是这样的:1,先获取给定URL的html文件,然后在这个文件中用正则表达式匹配出需要的URL(可能含有分页的URL),然后再获取匹配出的URL的html,在这些html文件中会有可以下载的PDF文件的链接,然后把这些链接存到磁盘中.(这中间因为网站有防爬虫,所以中间花了点时间在模拟浏览器上).拿到链接之后,就是下载文献了,写了一个shell脚本,每次读一个链接下载,然后保存到指定的文件夹中.

  这次的需求跟以前的需求有所不同,需要抓取目标网站的一些商品的信息,比上次有点复杂.花了一两天时间在网上找了好几个框架,最后决定使用webmagic基于Java的框架.

选择这个框架也是因为这个框架很方便,很容易进行二次开发,而且也集成了一些其它的工具,比如提取指定html标签的元素等.

  webmagic四个主要的组件:1,downloader;2,PageProcessor;3,Scheduler;4,Pipeline.

  Downloader负责从网上下载页面,PageProcessor负责解析页面,提取有用的信息,发现链接,Scheduler管理未抓取的URL以及去重,Pipeline就是存储和显示数据了,可以打印到控制台,输出到本地文件或者写入数据库.

  这些组件webmagic都已经实现了,使用者只需要设计自己提取内容的规则就可以了.

 

  附上链接https://github.com/code4craft/webmagic

转载于:https://www.cnblogs.com/hgrourou/p/5221586.html

你可能感兴趣的文章
JavaScript中的BOM和DOM
查看>>
360浏览器兼容模式 不能$.post (不是a 连接 onclick的问题!!)
查看>>
spring注入Properties
查看>>
【BZOJ-2295】我爱你啊 暴力
查看>>
【BZOJ-1055】玩具取名 区间DP
查看>>
Bit Twiddling Hacks
查看>>
Windwos中的线程同步
查看>>
LeetCode : Reverse Vowels of a String
查看>>
时间戳与日期的相互转换
查看>>
jmeter(五)创建web测试计划
查看>>
python基本数据类型
查看>>
1305: [CQOI2009]dance跳舞 - BZOJ
查看>>
关于TDD的思考
查看>>
Cocos2d-x学习之windows 7 android环境搭建
查看>>
将html代码中的大写标签转换成小写标签
查看>>
jmeter多线程组间的参数传递
查看>>
零散笔记
查看>>
MaiN
查看>>
[Python学习] 简单网络爬虫抓取博客文章及思想介绍
查看>>
触发器课程SQL Server 知识梳理九 触发器的使用
查看>>