Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

wsqy/proxyPool

Open more actions menu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

42 Commits
42 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

proxy是一套django开发的代理池项目

项目基于 dajngo1.8+ python3.x 在此环境下应该能无缝使用,其余版本没有测试但是应该没有问题,如有问题,欢迎想我提出 依赖

requests
BeautifulSoup4

你可以使用pip或者easy_install安装,也可以下载源代码然后使用python setup.py isntall安装。一切取决于你使用哪种方式更方便

使用方法

1. 作为独立的app嵌入到你原有的项目中

你可以下载proxypool文件夹,放到你的django 项目中,在这种情况下,你只需要在做两步 - 项目配置中的INSTALLED_APPS加入一行'proxyPool.apps.ProxypoolConfig', - 在 urls.py中加入的urlpatterns中加入路由配置url(r'^proxyPool/', include('proxyPool.urls')),

接着做好数据库的同步就好了

2.作为完整的django项目:

你可以将proxyPool项目整个都copy回去,这里有些注意事项 - db.sqlite3是我的demo数据库,里面有一些示例数据,后台账户为 用户:qy 密码:1234abcd - 你可以删除这个数据库文件重新生成

api说明

前提:假设你的host的127.0.0.1::8000

1. xxx/proxyPool/get_client_ip

这是获取客户的ip的,返回格式是json字符串形式的ip地址,暂时未使用,但是我的想法是让他做代理可用性验证的,因为考虑到使用者有很大可能性本地部署所以此api未使用

2. xxx/proxyPool/addxici

这是用来增加代理ip的,你应该定时访问他,时间间隔建议6小时一次 我这里写好了获取西祠国内匿名代理的demo,一般来说这就够用了,但是如果你需要可以按照我的实现方式增加别的获取方法

如果获取成功返回:json字符串形式的添加一页代理数据成功, 如果获取成功失败:获取西祠代理失败:"+错误原因

3. xxx/proxyPool/getproxy

get请求用来获取单个代理 他会随机的返回一个代理,但是你还是可以加上过滤条件abroad=x,x可选0:国内代理(默认),1:国外代理

返回值类型:Json串

获取代理的方法
必有的返回参数
    code: 状态码
        000 未开始
        200 正常
        304 需求的代理暂时无法满足
        404 get请求abroad 参数类型错误
    mes :说明信息
当请求成功,状态码为200时特有的参数
    ip         代理ip
    port       代理ip的port
    protocol   代理的类型 HTTP还是HTTPS
    address    代理ip的所在地
    anonymous  是否是匿名的代理
    abroad     是否是国外的代理
    site       代理的来源站
4. xxx/proxyPool/get_dict_proxy

get请求用来获取多个代理 他会随机的返回指定个数的代理, 可选参数: - abroad=x,x可选0:国内代理(默认),1:国外代理 - count=x, x默认为1

返回值类型:Json串

必有的返回参数
    code: 状态码
        000 未开始
        200 正常
        201 爬取成功 数量不足要求
        304 需求的代理暂时无法满足
        404 get请求abroad 参数类型错误
    mes: 说明信息
当请求成功,状态码为2xx时特有的参数
    count   返回代理的个数
    result  键result是一个包含所有代理信息的列表,列表中 的每个元素是一个字典,包含以下信息
        ip         代理ip
        port       代理ip的port
        protocol   代理的类型 HTTP还是HTTPS
        address    代理ip的所在地
        anonymous  是否是匿名的代理
        abroad     是否是国外的代理
        site       代理的来源站
5. xxx/proxyPool/filter_proxy

验证代理ip可用性的接口,建议定时执行,建议时间间隔(30/60分钟一次) 返回结果:"%s个代理失效了"+在此次验证中失效的代理个数

About

proxyPool

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
Morty Proxy This is a proxified and sanitized view of the page, visit original site.