Metadata-Version: 1.1
Name: kdl
Version: 0.2.12
Summary: kuaidaili api sdk python, site: https://www.kuaidaili.com
Home-page: https://github.com/kuaidaili/python-sdk/api-sdk
Author: kuaidaili-dev
Author-email: service@kuaidaili.com
License: BSD License
Description: ===============
        快代理api SDK
        ===============
        
        ==========
        依赖环境
        ==========
        
        1. python2.7 到 python3.7
        2. 从 `快代理 <https://www.kuaidaili.com>`_ 购买相应产品
        3. `获取订单的orderId和apiKey <https://www.kuaidaili.com/usercenter/api/settings/>`_
        
        =========
        获取安装:
        =========
        安装 Python SDK 前，请先获取订单对应的订单号和apiKey。 订单号是用于标识订单，apiKey 是用于加密签名字符串和服务器端验证签名字符串的密钥。apiKey 必须严格保管，避免泄露。
        
        通过pip安装(推荐)
        ===================
        您可以通过 ``pip`` 将SDK安装到您的项目中：
         | ``pip install kdl``
        
        如果您的项目环境尚未安装 ``pip`` ，可参考：
         * Ubuntu/Debian安装pip：``apt-get install python-setuptools``
         * CentOS安装pip：``yum install python-setuptools``
         * MacOS安装pip: ``curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py; python get-pip.py``
        
        您还可以参考 `pip官网 <https://pip.pypa.io/en/stable/installing/?spm=a3c0i.o32026zh.a3.6.74134958lLSo6o>`_ 进行安装。
        
         
        通过源码包安装
        ==============
        前往 `Github 代码托管地址 <https://github.com/kuaidaili/python-sdk/tree/master/api-sdk>`_ 下载最新代码，解压后: 
        
        .. code-block:: console
        
         $ cd api-sdk
         $ python setup.py install
        
        
        示例
        ====
        以私密代理订单使用为例:
        
        .. code-block:: python
        
         # -*- coding: utf-8 -*-
        
         """
            私密代理使用示例
            接口鉴权说明：
            目前支持的鉴权方式有 "simple" 和 "hmacsha1" 两种，默认使用 "simple"鉴权。
            所有方法均可添加关键字参数sign_type修改鉴权方式。
         """
        
         import kdl
        
         auth = kdl.Auth("yourorderid", "yourorderapikey")
         client = kdl.Client(auth)
        
         # 获取订单到期时间, 返回时间字符串
         expire_time = client.get_order_expire_time()
         print("expire time", expire_time)
        
         # 获取ip白名单, 返回ip列表
         ip_whitelist = client.get_ip_whitelist()
         print("ip whitelist", ip_whitelist)
        
         # 设置ip白名单，参数类型为字符串或列表或元组
         # 成功则返回True, 否则抛出异常
         client.set_ip_whitelist([])
         client.set_ip_whitelist("127.0.0.1, 192.168.0.139")
         print(client.get_ip_whitelist())
         client.set_ip_whitelist(tuple())
        
         # 提取私密代理ip, 第一个参数为提取的数量, 其他参数以关键字参数的形式传入(不需要传入signature和timestamp)
         # 具体有哪些参数请参考帮助中心: "https://help.kuaidaili.com/api/getdps/"
         # 返回ip列表
         # 注意：若您使用的是python2, 且在终端调用，或在文件中调用且没有加 "# -*- coding: utf-8 -*-" 的话
         # 传入area参数时，请传入unicode类型，如 area=u'北京,上海'
         ips = client.get_dps(2, sign_type='hmacsha1', format='json', pt=2, area='北京,上海,广东')
         print("dps proxy: ", ips)
        
        
         # 检测私密代理有效性： 返回 ip: true/false 组成的dict
         ips = client.get_dps(2, sign_type='simple', format='json')
         valids = client.check_dps_valid(ips)
         print("valids: ", valids)
        
        
         # 获取计数版ip余额（仅私密代理计数版）
         balance = client.get_ip_balance(sign_type='hmacsha1')
         print("balance: ", balance)
        
        您可以在examples目录下找到更详细的示例
        
        参考资料
        ==========
        
        * `查看API列表 <https://help.kuaidaili.com/api/intro>`_
        * `了解API鉴权 <https://help.kuaidaili.com/api/auth>`_
Platform: any
Classifier: Development Status :: 4 - Beta
Classifier: Operating System :: OS Independent
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: Implementation
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Topic :: Software Development :: Libraries
