1. XenForo 1.5.14 中文版——支持中文搜索!现已发布!查看详情
  2. Xenforo 爱好者讨论群:215909318 XenForo专区

新闻 WebMagic 0.7.0 版本发布,Java 爬虫框架 下载

本帖由 漂亮的石头2017-05-29 发布。版面名称:软件资讯

  1. 漂亮的石头

    漂亮的石头 版主 管理成员

    注册:
    2012-02-10
    帖子:
    487,984
    赞:
    47
    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.0 版本发布,Java 爬虫框架下载地址
     
正在加载...