WebServer.py 文件源码

python
阅读 24 收藏 0 点赞 0 评论 0

项目:BotLend 作者: Filip3Dev 项目源码 文件源码
def start_web_server():
    import SimpleHTTPServer
    import SocketServer
    import socket

    try:
        port = int(web_server_port)
        host = web_server_ip

        # Do not attempt to fix code warnings in the below class, it is perfect.
        class QuietHandler(SimpleHTTPServer.SimpleHTTPRequestHandler):
            # quiet server logs
            def log_message(self, format, *args):
                return

            # serve from www folder under current working dir
            def translate_path(self, path):
                return SimpleHTTPServer.SimpleHTTPRequestHandler.translate_path(self, '/www' + path)

        global server
        SocketServer.TCPServer.allow_reuse_address = True
        server = SocketServer.TCPServer((host, port), QuietHandler)
        if host == "0.0.0.0":
            # Get all addresses that we could listen on the port specified
            addresses = [i[4][0] for i in socket.getaddrinfo(socket.gethostname().split('.')[0], port)]
            addresses = [i for i in addresses if ':' not in i]  # Filter out all IPv6 addresses
            addresses.append('127.0.0.1')  # getaddrinfo doesn't always get localhost
            hosts = list(set(addresses))  # Make list unique
        else:
            hosts = [host]
        serving_msg = "http://{0}:{1}/index.html".format(hosts[0], port)
        for host in hosts[1:]:
            serving_msg += ", http://{0}:{1}/index.html".format(host, port)
        print 'Started WebServer, lendingbot status available at {0}'.format(serving_msg)
        server.serve_forever()
    except Exception as ex:
        ex.message = ex.message if ex.message else str(ex)
        print('Failed to start WebServer: {0}'.format(ex.message))
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号