# -*- coding: utf-8 -*- """ ------------------------------------------------- File Name: setting.py Description : 配置文件 Author : JHao date: 2019/2/15 ------------------------------------------------- Change Activity: 2019/2/15: ------------------------------------------------- """ import sys from os import getenv from logging import getLogger log = getLogger(__name__) HEADER = """ **************************************************************** *** ______ ********************* ______ *********** _ ******** *** | ___ \_ ******************** | ___ \ ********* | | ******** *** | |_/ / \__ __ __ _ __ _ | |_/ /___ * ___ | | ******** *** | __/| _// _ \ \ \/ /| | | || __// _ \ / _ \ | | ******** *** | | | | | (_) | > < \ |_| || | | (_) | (_) || |___ **** *** \_| |_| \___/ /_/\_\ \__ |\_| \___/ \___/ \_____/ **** **** __ / / ***** ************************* /___ / ******************************* ************************* ******************************** **************************************************************** """ PY3 = sys.version_info >= (3,) DB_TYPE = getenv('db_type', 'REDIS').upper() DB_HOST = getenv('db_host', '107.182.191.3') DB_PORT = getenv('db_port', 7379) DB_PASSWORD = getenv('db_password', 'jlkj-841-2-redis') USEFUL_PROXY_COUNT = 10 ZHIMA_PROXY_API = 'http://http.tiqu.alicdns.com/getip3?num=10&type=2&pro=0&city=0&yys=0&port=1&time=1&ts=0&ys=0&cs=0&lb=1&sb=0&pb=45&mr=2®ions=&gm=4' # ZHIMA_PROXY_API = 'http://api.proxy.ipidea.io/getProxyIp?num=10&return_type=json&lb=1&sb=0&flow=1®ions=&protocol=http' """ 数据库配置 """ DATABASES = { "default": { "TYPE": DB_TYPE, "HOST": DB_HOST, "PORT": DB_PORT, "NAME": "proxy", "PASSWORD": DB_PASSWORD } } # register the proxy getter function PROXY_GETTER = [ # # "freeProxy01", # "freeProxy02", # "freeProxy03", # "freeProxy04", # "freeProxy05", # # "freeProxy06", # "freeProxy07", # # "freeProxy08", # "freeProxy09", # "freeProxy13", # #"freeProxy14", # "freeProxy15", "zhimaProxy" ] """ API config http://127.0.0.1:5010 """ SERVER_API = { "HOST": "0.0.0.0", # The ip specified which starting the web API "PORT": 5010 # port number to which the server listens to } class ConfigError(BaseException): pass def checkConfig(): if DB_TYPE not in ["SSDB", "REDIS"]: raise ConfigError('db_type Do not support: %s, must SSDB/REDIS .' % DB_TYPE) if type(DB_PORT) == str and not DB_PORT.isdigit(): raise ConfigError('if db_port is string, it must be digit, not %s' % DB_PORT) from ProxyGetter import getFreeProxy illegal_getter = list(filter(lambda key: not hasattr(getFreeProxy.GetFreeProxy, key), PROXY_GETTER)) if len(illegal_getter) > 0: raise ConfigError("ProxyGetter: %s does not exists" % "/".join(illegal_getter)) checkConfig()