Hunny-LH / ProxyPool-1

给爬虫使用的代理IP池

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ProxyPool

@Tony沈哲 on weibo Download License

获取可用代理池的库,从网上抓取的代理很多都是不可用的。这个库先用爬虫抓取代理,再做一些检查是否可用,可用的话就存放到mongodb中。

ProxyPool可以供给网络爬虫使用,ProxyPool由Spring Boot+RxJava2.x+MongoDB搭建

使用方法:

单独使用ProxyPool抓取逻辑,无任何界面,可用于任何项目,无侵入性

对于Java工程如果使用gradle构建,由于默认没有使用jcenter(),需要在相应module的build.gradle中配置

repositories {
    mavenCentral()
    jcenter()
}

Gradle:

compile 'com.cv4j.proxy:proxypool:1.1.5'

也可以将该repository clone下来独立运行,带web界面

本地需要事先搭建好MongoDB的环境。

可用的代理会存放到MongoDB中,每隔几小时(可配置)会重新抓取一次可用的代理。如果在抓取代理时遇到http status 503的情况,代理池会使用其中的代理来访问数据源再进行抓取。

最新的免费代理资源:http://47.97.7.119:8080/proxypool/proxylist

管理代理资源网站:http://47.97.7.119:8080/proxypool/resourcelist

把代理资源添加到计划任务:http://47.97.7.119:8080/proxypool/planlist

预览效果如下:

另外,还提供了一个接口,可以返回代理池中的Proxy

线上环境地址:http://47.97.7.119:8080/proxypool/proxys/{count}

类型:GET

参数说明:count<=0 或 count>数据库里总数量, 也返回全部的代理数据

以上链接在本地运行时,请把具体的IP地址替换成localhost即可

About

给爬虫使用的代理IP池

License:Apache License 2.0


Languages

Language:Java 62.8%Language:HTML 32.0%Language:JavaScript 4.2%Language:CSS 0.9%