资讯专栏INFORMATION COLUMN

webmagic小试牛刀

stefan / 3016人阅读

摘要:序是里头比较优秀的一个爬虫框架使用作为解析工具,并基于其开发了解析的工具。默认使用了作为下载工具。这里展示一下入门级使用。

webmagic是java里头比较优秀的一个爬虫框架:

使用Jsoup作为HTML解析工具,并基于其开发了解析XPath的工具Xsoup。

默认使用了Apache HttpClient作为下载工具。

这里展示一下入门级使用。

maven
        
            us.codecraft
            webmagic-core
            0.7.3
        
        
            us.codecraft
            webmagic-extension
            0.7.3
        
启动类
public static void main(String[] args) {
    Spider.create(new GithubRepoPageProcessor())
            //从https://github.com/code4craft开始抓    
            .addUrl("https://github.com/code4craft")
            //设置Scheduler,使用Redis来管理URL队列
            .setScheduler(new RedisScheduler("localhost"))
            //设置Pipeline,将结果以json方式保存到文件
            .addPipeline(new JsonFilePipeline("D:datawebmagic"))
            //开启5个线程同时执行
            .thread(5)
            //启动爬虫
            .run();
}
PageProcessor

核心的工作主要是自定义PageProcessor,比如

new PageProcessor() {

            @Override
            public void process(Page page) {
                List links = page.getHtml()
                        .xpath("//table[@id="jrjthreadtable"]//td/a/@href")
                        .regex("/msg,d+.*.html")
                        .all();
                System.out.println(links);
            }

            @Override
            public Site getSite() {
                return Site.me()
                        .setRetryTimes(3)
                        .setSleepTime(1000)
                        .setTimeOut(10000);
            }

这里使用了xpath的语法来选取,不熟悉xpath的话,可以使用chrome:检查-copy-copy xpath来学习。

doc

webmagic

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/70262.html

相关文章

  • webmagic爬取分页列表数据

    摘要:是爬虫框架中比较简单易上手的一个。官网链接下面的例子是使用这个框架来爬取工商银行的私人理财推荐分页列表数据。页面链接为引入配置如果项目已经引入记录日志,则需要在中排除。 webmagic是java爬虫框架中比较简单易上手的一个。官网链接:http://webmagic.io/ 下面的例子是使用这个框架来爬取工商银行的私人理财推荐分页列表数据。页面链接为:https://mybank.i...

    Shisui 评论0 收藏0
  • 爬虫框架WebMagic源码分析系列目录

    摘要:爬虫框架源码分析之爬虫框架源码分析之爬虫框架源码分析之爬虫框架源码分析之爬虫框架源码分析之之进阶 爬虫框架Webmagic源码分析之Spider爬虫框架WebMagic源码分析之Scheduler爬虫框架WebMagic源码分析之Downloader爬虫框架WebMagic源码分析之Selector爬虫框架WebMagic源码分析之SeleniumWebMagic之Spider进阶

    wayneli 评论0 收藏0
  • 爬虫框架WebMagic源码分析之Selenium

    摘要:有一个模块其中实现了一个。但是感觉灵活性不大。接口如下它会获得一个实例,你可以在里面进行任意的操作。本部分到此结束。 webmagic有一个selenium模块,其中实现了一个SeleniumDownloader。但是感觉灵活性不大。所以我就自己参考实现了一个。 首先是WebDriverPool用来管理WebDriver池: import java.util.ArrayList; im...

    MarvinZhang 评论0 收藏0
  • 关于webmagic爬取Https网站报错的解决办法

    摘要:目前最新版是版本,在爬取只支持的站点会报错目前作者说会在版本发布修复错误,目前的解决办法是临时适配方式,修改中的方法,重写自己实现的,并设置到中。 目前webmagic最新版是0.7.3版本,在爬取只支持TLS1.2的https站点会报错 javax.net.ssl.SSLException: Received fatal alert: protocol_version at ...

    CKJOKER 评论0 收藏0
  • Webmagic+Selenium+PhantomJS实战

    摘要:还是直接贴代码说明比较实在。重新调整窗口大小,以适应页面,需要耗费一定时间。建议等待合理的时间。负责抠图指定坐标不保持比例,调用进程,返回识别结果。 还是直接贴代码说明比较实在。感觉webmagic-selenium这个模块有点鸡肋,但还是有可借鉴之处。借鉴它写了一个SeleniumDownloader,如下: import org.openqa.selenium.By; import...

    zhangxiangliang 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<