| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 |
- # -*- 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', 'SSDB').upper()
- DB_HOST = getenv('db_host', '127.0.0.1')
- DB_PORT = getenv('db_port', 8888)
- DB_PASSWORD = getenv('db_password', '')
- """ 数据库配置 """
- 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",
- "freeProxy14",
- ]
- """ 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
- }
- VERIFY_HOST = getenv('proxy_verify_host', 'http://www.baidu.com')
- 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()
|