发布于 2017-05-29 14:25:27 | 193 次阅读 | 评论: 0 | 来源: 网友投递

这里有新鲜出炉的精品教程,程序狗速度看过来!

WebMagic 垂直爬虫

webmagic的是一个无须配置、便于二次开发的爬虫框架,它提供简单灵活的API,只需少量代码即可实现一个爬虫。


WebMagic 0.7.0 版本发布了,此次更新重写了HttpClientDownloader,完善了POST等其他Http Method的支持,并重写了代理API,更加简单和便于扩展。

POST支持

  • 新的POST API,支持各种RequestBody #513

Request request = new Request("http://xxx/path");  request.setMethod(HttpConstant.Method.POST);  request.setRequestBody(HttpRequestBody.json("{'id':1}","utf-8"));
  • 移除了老的在request.extra中设置NameValuePair的方式

  • POST请求不再进行去重 #484

代理支持

  • 新的代理APIProxyProvider,支持自由扩展

  • 默认实现SimpleProxyProvider是一个简单的round-robin实现,可以添加任意个数的代理。

HttpClientDownloader httpClientDownloader = new HttpClientDownloader(); SimpleProxyProvider proxyProvider = SimpleProxyProvider.from(new Proxy("127.0.0.1", 1087), new Proxy("127.0.0.1", 1088));  httpClientDownloader.setProxyProvider(proxyProvider);
  • 移除了Site上关于代理配置的setProxy等,代理设置统一到HttpClientDownloader里。

新的SimpleHttpClient

  • 用作简单的单次下载和解析时,使用SimpleHttpClient可以满足需求

SimpleHttpClient simpleHttpClient = new SimpleHttpClient(); GithubRepo model = simpleHttpClient.get("github.com/code4craft/webmagic",GithubRepo.class);

其他改动

  • 为Page中增加状态码和Http头信息 #406

  • 支持Request级别设置Http Header和Cookie

  • 去掉Site.addStartRequest() , 用Spider.addStartRequest()代替 #494

  • HttpClientDownloader大幅重构,将Request转换抽象到HttpUriRequestConverter(之前继承HttpClientDownloader的实现可能需要做相应修改) #524

  • 将CycleRetry和statusCode的判断逻辑从Downloader中迁移到Spider中 #527

  • 通过Page.isDownloadSuccess而不是Page对象本身为空来判断是否下载失败

  • 为PageModel增加不发现新URL的功能 #575

  • 为Site增加了disableCookieManagement属性,在不想使用cookie时使用 #577



历史版本 :
WebMagic 0.7.3 版本发布,Java 爬虫框架
WebMagic 0.7.2 版本发布,Java 爬虫框架
WebMagic 0.7.1 版本发布,Java 爬虫框架
WebMagic 0.7.0 版本发布,Java 爬虫框架
WebMagic 0.6.1 版本发布,Java 爬虫框架
WebMagic 0.6.0 版本发布,Java爬虫框架
WebMagic 0.5.3 版本发布,Java爬虫框架
最新网友评论  共有(0)条评论 发布评论 返回顶部

Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  广告服务