def init(conf_file): global exporter #automic scan dirs files_list = os.listdir(path.BIZ_PATH) files_list = set([x[:x.rfind(".")] for x in files_list if x.endswith(".py")]) map(__import__, ['biz.' + x for x in files_list]) sock = context.socket(zmq.DEALER) sock.connect('tcp://' + conf_file) exporter = Exporter(sock) Router.register_urls(exporter) IOLoop.instance().set_idel_call(functools.partial(exporter.send, ['echo']))
def wsgi(self, environ, start_response): """ All per request initialization goes here """ # initialize router router = Router(self.routes) router.route(environ['PATH_INFO']) # dispatch dispatcher = Dispatcher(Request(environ), router) res = dispatcher.dispatch() return res
def test_static_file(self): router = Router() router.pipe('/data')(StaticMiddleware(dir=os.getcwd())) @router.get() def index(req, res): res.set_data('Index') return res c = Client(router.build(), Response) res = c.get('/data/text.txt') self.assertEqual(res.data, b'Test data')
def init(conf_file): global exporter #automic scan dirs files_list = os.listdir(path.BIZ_PATH) files_list = set( [x[:x.rfind(".")] for x in files_list if x.endswith(".py")]) map(__import__, ['biz.' + x for x in files_list]) sock = context.socket(zmq.DEALER) sock.connect('tcp://' + conf_file) exporter = Exporter(sock) Router.register_urls(exporter) IOLoop.instance().set_idel_call(functools.partial(exporter.send, ['echo']))
def test_decorators(self): self.middleware_called = False self.endpoint_called = False self.middleware_a_called = False self.endpoint_a_called = False router = Router() @router.pipe() def middleware(req, res, next): self.middleware_called = True return next(req, res) @router.pipe('/a') def middleware_a(req, res, next): self.middleware_a_called = True return next(req, res) @router.get('/a') def index_a(req, res): self.endpoint_a_called = True res.set_data('Index /a') return res @router.get() def index(req, res): self.endpoint_called = True res.set_data('Index /') return res c = Client(router.build(), Response) res = c.get('/') self.assertEqual(res.data, b'Index /') self.assertTrue(self.middleware_called) self.assertTrue(self.endpoint_called) self.assertFalse(self.endpoint_a_called) self.assertFalse(self.middleware_a_called) self.middleware_called = False self.endpoint_called = False self.middleware_a_called = False self.endpoint_a_called = False res = c.get('/a') self.assertEqual(res.data, b'Index /a') self.assertTrue(self.middleware_called) self.assertTrue(self.endpoint_a_called) self.assertTrue(self.middleware_a_called) self.assertFalse(self.endpoint_called)
def test_index(self): self.index_called = False def index(req, res): self.index_called = True res.set_data('Index') return res router = Router() router._create_endpoint(index, '/', ['GET']) c = Client(router.build(), Response) res = c.get('/') self.assertTrue(self.index_called) self.assertEqual(res.data, b'Index')
def test_compression(self): router = Router() router.pipe()(CompressionMiddleware()) @router.get() def index(req, res): res.set_data('Index') return res c = Client(router.build(), Response) res = c.get('/', headers={'Accept-Encoding': 'gzip'}) self.assertEqual(res.headers.get('Content-Encoding'), 'gzip')
def test_method(self): self.index_get_called = False self.index_post_called = False def index_get(req, res): self.index_get_called = True res.set_data('Index_get') return res def index_post(req, res): self.index_post_called = True res.set_data('Index_post') return res router = Router() router._create_endpoint(index_get, '/', ['GET']) router._create_endpoint(index_post, '/', ['POST']) c = Client(router.build(), Response) res = c.get('/') self.assertTrue(self.index_get_called) self.assertFalse(self.index_post_called) self.assertEqual(res.data, b'Index_get') self.index_get_called = False self.index_post_called = False res = c.post('/') self.assertFalse(self.index_get_called) self.assertTrue(self.index_post_called) self.assertEqual(res.data, b'Index_post')
def test_script_name(self): self.middleware_called = False router = Router() @router.pipe('/img') def images(req, res, next): self.middleware_called = True self.assertEqual(req.environ['SCRIPT_NAME'], '/flower/') return next(req, res) @router.get('/img/flower') def index(req, res): res.set_data('Flower') return res c = Client(router.build(), Response) res = c.get('/img/flower') self.assertEqual(res.data, b'Flower') self.assertTrue(self.middleware_called)
def test_session(self): self.session_id = uuid.uuid4() def genId(req): return self.session_id.hex router = Router() sessionManager = BaseSessionManager(genId) router.pipe()(sessionManager) @router.get() def index(req, res): if 'alice' in sessionManager.session: res.set_data(sessionManager.session['alice']) else: sessionManager.session['alice'] = 'bob' res.set_data('Index') return res c = Client(router.build(), Response) res = c.get('/') self.assertEqual(res.data, b'Index') res = c.get('/') self.assertEqual(res.data, b'bob') c = Client(router.build(), Response) self.session_id = uuid.uuid4() res = c.get('/') self.assertEqual(res.data, b'Index')
def test_wildcard(self): self.middleware_called = False self.endpoint_called = False self.endpoint_a_called = False def middleware(req, res, next): self.middleware_called = True return next(req, res) def endpoint_a(req, res): self.endpoint_a_called = True res.set_data('a') return res def endpoint(req, res): self.endpoint_called = True res.set_data('Index') return res router = Router() router._create_middleware(middleware, '%', ['GET']) router._create_endpoint(endpoint_a, '/a', ['GET']) router._create_endpoint(endpoint, '/', ['GET']) c = Client(router.build(), Response) res = c.get('/') self.assertTrue(self.middleware_called) self.assertTrue(self.endpoint_called) self.assertFalse(self.endpoint_a_called) self.assertEqual(res.data, b'Index') self.middleware_called = False self.endpoint_called = False self.endpoint_a_called = False c = Client(router._application, Response) res = c.get('/a') self.assertTrue(self.middleware_called) self.assertFalse(self.endpoint_called) self.assertTrue(self.endpoint_a_called) self.assertEqual(res.data, b'a')
config_file = 'config.json' if not os.path.isfile(config_file): raise Exception('Config file is not exists') try: config = json.load(open('config.json')) except Exception as e: print(e) exit(0) if not config or not config['google_sheet'] or not config['router']: raise Exception('Config file is invalid') now = datetime.datetime.now() router = Router(config['router']['url'], config['router']['login'], config['router']['password']) hosts_count = router.get_lan_hosts_count() speed_test_result = speed_tester.get_result() client = (f"{speed_test_result['client']['isp']} \n" f"{speed_test_result['client']['ip']} \n{speed_test_result['client']['country']}" ) server = (f"{speed_test_result['server']['sponsor']} \n{speed_test_result['server']['host']}\n" f"{speed_test_result['server']['name']} \n{speed_test_result['server']['country']}" ) google_sheet = GoogleSheet( config['google_sheet']['sheet_id'], config['google_sheet']['page']
************************************************** TP-Link Wireless N Router WR841N Model No. TL-WR841N ************************************************** {} 1. Execute Task 2. Reset Connection 3. Default IP Address 4. Target IP Address 5. Read Configuration 6. Reboot Router 7. Configure WAN 8. WAN Details 0. Exit/Logout """.format(color_heading, color_options) # Create an object of database module database = Database() # Create an object of router module router = Router('192.168.0.1', 'admin', 'admin') try: if router.login(): # login success # Create an database file that store device credentials database.config() check = False output = '' # create a continuous loop while True: # clear the screen os.system('clear') # print the result if not output == '':
import json, csv, time, string, itertools, copy, yaml import numpy as np import pandas as pd import datetime as dt import matplotlib.pyplot as plt from matplotlib import colors as mcolors CONFIG_FILE_NAME = '002.01_config' config = yaml.load(stream=file(DIR_TASK + '\\' + CONFIG_FILE_NAME + '.yml', 'r')) #yaml.dump( config, file( DIR_TASK + '\\config.yml', 'w') ) sys.path.append(DIR_LIB) from lib.router import Router router = Router() print '>> Walk, Don`t Run' # -------------------------------------------------------------------------- #STEP: modify version? configVersion = config['version'] config['version'] = round( float(configVersion) + .1, 1) if config['options']['increment-version'] == True else configVersion #STEP: prepare Plot plt.xlabel('xLabel') plt.ylabel("yLabel") #STEP: load sourcePath = router.getRoute(
import json, csv, time, string, itertools, copy, yaml import datetime as dt import urllib os.chdir(os.path.dirname(__file__)) CONFIG_FILE_NAME = '001.01_config' config = yaml.load(stream=file(DIR_TASK + '\\' + CONFIG_FILE_NAME + '.yml', 'r'), Loader=yaml.FullLoader) #yaml.dump( config, file( DIR_TASK + '\\config.yml', 'w') ) sys.path.append(DIR_LIB) from lib.router import Router router = Router() print '>> Walk, Don`t Run' def tsToDate(miliTs): #convert Drawdate To Timestamp tss = float(str(miliTs)[:-3]) return dt.datetime.fromtimestamp(tss).strftime('%Y-%m-%d') # -------------------------------------------------------------------------- outputPath = router.getRoute( config['target']['route']) + config['target']['dir'] #com: create output folder
from selenium.webdriver.common.keys import Keys from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.common.action_chains import ActionChains from selenium.common.exceptions import NoSuchElementException CONFIG_FILE_NAME = '006.00_config' config = yaml.load(stream=file(DIR_TASK + '\\' + CONFIG_FILE_NAME + '.yml', 'r')) #yaml.dump( config, file( DIR_TASK + '\\config.yml', 'w') ) sys.path.append(DIR_LIB) from lib.router import Router router = Router() # -------------------------------------------------------------------------- today = dt.datetime.now().strftime("%Y-%m-%d--%H-%M") #STEP: modify version? configVersion = config['version'] config['version'] = round( float(configVersion) + .1, 1) if config['options']['increment-version'] == True else configVersion sourcePathFile = router.getRoute( config['source'] ['route']) + config['source']['dir'] + config['source']['file'] rawObj = open(sourcePathFile, 'r')
import json, csv, time, string, itertools, copy, yaml import numpy as np import pandas as pd import datetime as dt import urllib2 CONFIG_FILE_NAME = '003.00_config.yml' config = yaml.load(stream=file(DIR_TASK + '\\' + CONFIG_FILE_NAME, 'r')) #yaml.dump( config, file( DIR_TASK + '\\config.yml', 'w') ) sys.path.append(DIR_LIB) from lib.router import Router router = Router() # _____________________________________________________________________________________ INIT #STEP: modify version? configVersion = config['version'] config['version'] = round( float(configVersion) + .1, 1) if config['options']['increment_version'] == True else configVersion #DEF def getInfosAB(station_a, station_b): global log YOUR_API_KEY = config['params']['api_key'] ORIGIN = str(station_a['coord'][1]) + ',' + str(station_a['coord'][0])
app.route('/<name>/' + str(i))(route) c = Client(app.wsgi_app, Response) with time_it('call route from flask', fd=fd): res = c.get('/hakim/30000') print(res.data) # assert res.data == b'900 route' new_mem = process.memory_info().rss print(new_mem - mem) mem = new_mem router = Router() with time_it('create 60000 routes wsgitools router', fd=fd): for i in range(60000): route_desc = copy.copy(str(i) + ' route') @router.get(rule='/<name>/' + str(i)) def route(req, res): res.set_data(route_desc) return res c = Client(router.build(), Response) with time_it('call route from wsgitools.router', fd=fd): res = c.get('/hakim/30000') print(res.data) # assert res.data == b'900 route'
DIR_LIB = os.path.abspath(os.path.join(os.path.dirname(__file__), "../")) DIR_TASK = os.path.dirname(os.path.abspath(__file__)) import json, csv, time, string, itertools, copy, yaml import pyodbc import numpy as np import pandas as pd import datetime as dt config = yaml.load(stream=file(DIR_TASK + '\\config.yml', 'r')) #yaml.dump( config, file( DIR_TASK + '\\config.yml', 'w') ) sys.path.append(DIR_LIB) from lib.router import Router router = Router() # -------------------------------------------------------------------------- #STEP: modify version? configVersion = config['version'] config['version'] = round( float(configVersion) + .1, 1) if config['options']['increment-version'] == True else configVersion #STEP: Save dta to DB cnxn = pyodbc.connect( r'Driver={SQL Server};Server=.\SQLEXPRESS;Database=qlik_medical;Trusted_Connection=yes;' )
import numpy as np import pandas as pd import datetime as dt from os import listdir from os.path import isfile, join import requests CONFIG_FILE_NAME = '006-R0_config' config = yaml.load( stream = file( DIR_TASK + '\\' + CONFIG_FILE_NAME + '.yml', 'r')) #yaml.dump( config, file( DIR_TASK + '\\config.yml', 'w') ) sys.path.append( DIR_LIB ) from lib.router import Router router = Router( ) # -------------------------------------------------------------------------- today = dt.datetime.now().strftime("%Y-%m-%d--%H-%M") #STEP: modify version? configVersion = config['version'] config['version'] = round( float(configVersion) + .1, 1 ) if config['options']['increment-version'] == True else configVersion #STEP: load file json sourcePathFile = router.getRoute( config['secret']['route'] ) + config['secret']['dir'] + config['secret']['file'] rawObj = open( sourcePathFile , 'r') secretFile = json.load( rawObj )
def test_subrouter(self): self.middleware_called = False self.endpoint_called = False self.middleware_a_called = False self.endpoint_a_called = False def middleware(req, res, next): self.middleware_called = True return next(req, res) def endpoint(req, res): self.endpoint_called = True res.set_data('Index') return res router = Router() router._create_middleware(middleware, '/', ['GET']) router._create_endpoint(endpoint, '/', ['GET']) def middleware_a(req, res, next): self.middleware_a_called = True return next(req, res) def endpoint_a(req, res): self.endpoint_a_called = True res.set_data('A') return res router_a = Router() router_a._create_middleware(middleware_a, '/b', ['GET']) router_a._create_endpoint(endpoint_a, '/b', ['GET']) router.mount('/a', router_a) with self.subTest('test / path'): c = Client(router.build(), Response) res = c.get('/') self.assertTrue(self.middleware_called) self.assertTrue(self.endpoint_called) self.assertFalse(self.endpoint_a_called) self.assertEqual(res.data, b'Index') self.middleware_called = False self.endpoint_called = False self.middleware_a_called = False self.endpoint_a_called = False with self.subTest('test /a path'): c = Client(router._application, Response) res = c.get('/a/b') self.assertTrue(self.middleware_called) self.assertFalse(self.endpoint_called) self.assertTrue(self.middleware_a_called) self.assertTrue(self.endpoint_a_called) self.assertEqual(res.data, b'A')
import json, csv, time, string, itertools, copy, yaml, re import pyodbc import numpy as np import pandas as pd import datetime as dt from time import clock import threading CONFIG_FILE = 'config_1.b.1.yml' config = yaml.load(stream=file(DIR_TASK + CONFIG_FILE, 'r')) #yaml.dump( config, file( DIR_TASK + CONFIG_FILE, 'w') ) sys.path.append(DIR_LIB) from lib.router import Router router = Router() # ---------------------------------- INIT print '>> Walk, Don`t Run' #----------------------------------- STEP: modify version? configVersion = config['version'] config['version'] = round( float(configVersion) + .1, 1) if config['options']['increment-version'] == True else configVersion pItemsFileLimit = config['params']['itemsFileLimit'] #----------------------------------- STEP: Collect dimension tables
import json, csv, time, string, itertools, copy, yaml import numpy as np import pandas as pd import datetime as dt import io from os import listdir from os.path import isfile, join CONFIG_FILE_NAME = '001.02_config.yml' config = yaml.load( stream = file( DIR_TASK + '\\' + CONFIG_FILE_NAME, 'r')) sys.path.append( DIR_LIB ) from lib.router import Router router = Router( ) # _____________________________________________________________________________________ INIT #STEP: modify version? configVersion = config['version'] config['version'] = round( float(configVersion) + .1, 1 ) if config['options']['increment_version'] == True else configVersion #STEP: output-file outputPath = router.getRoute( config['target']['route'] ) + config['target']['dir'] #COM: create output folder if not os.path.exists( outputPath ): os.makedirs( outputPath )
import json, csv, time, string, itertools, copy, yaml import numpy as np import pandas as pd import datetime as dt import math import re CONFIG_FILE_NAME = '010.00_config' config = yaml.load( stream = file( DIR_TASK + '\\' + CONFIG_FILE_NAME + '.yml', 'r')) #yaml.dump( config, file( DIR_TASK + '\\config.yml', 'w') ) sys.path.append( DIR_LIB ) from lib.router import Router router = Router( ) # -------------------------------------------------------------------------- today = dt.datetime.now().strftime("%Y-%m-%d--%H-%M") #STEP: modify version? configVersion = config['version'] config['version'] = round( float(configVersion) + .1, 1 ) if config['options']['increment-version'] == True else configVersion #STEP: load source files source = config['source']['source_quotes'] fileIdx = 0 sourcePathFile = router.getRoute( source['route'] ) + source['dir'] + source['files'][fileIdx]
import sys import os from os import listdir from os.path import isfile, join currentFullRoute = os.path.abspath( os.path.join(os.path.dirname(__file__), "./")) currentDir = os.path.basename(os.getcwd()) currentFileName = os.path.basename(__file__) libDir = os.path.abspath(os.path.join(os.path.dirname(__file__), "../")) sys.path.append(libDir) print libDir from lib.router import Router router = Router() ROUTES = router.getRoutes() from lib.loader import Loader loader = Loader(currentFullRoute, ROUTES) from lib.helper import Helper helper = Helper() from lib.filewriter import FileWriter filewriter = FileWriter() from lib.reporter import Reporter reporter = Reporter(ROUTES) # return to current path
from lib.session import SessionManager, User from lib.response import Response from werkzeug import redirect from lib.request import Request from lib.router import Router from wsgiref import simple_server router = Router() sessionManager = SessionManager('test') @sessionManager.get_user def get_user(user_id): user = User() user.id = user_id user.username = '******' user.password = '******' return user @router.pipe() def handle(next, req, res): try: return next(req, res) except FileNotFoundError: res.status_code = 404 return res router.pipe()(sessionManager) @router.get('/signin') def signin(req:Request, res: Response): if sessionManager.user is None:
DIR_TASK = os.path.dirname(os.path.abspath(__file__)) import json, csv, time, string, itertools, copy, yaml import numpy as np import pandas as pd import datetime as dt CONFIG_FILE_NAME = '004.00_config' config = yaml.load(stream=file(DIR_TASK + '\\' + CONFIG_FILE_NAME + '.yml', 'r')) #yaml.dump( config, file( DIR_TASK + '\\config.yml', 'w') ) sys.path.append(DIR_LIB) from lib.router import Router router = Router() print '>> Walk, Don`t Run' # -------------------------------------------------------------------------- #STEP: modify version? configVersion = config['version'] config['version'] = round( float(configVersion) + .1, 1) if config['options']['increment-version'] == True else configVersion halfFinalDate = config['params']['half-final_date'] d = dt.datetime.strptime(halfFinalDate, '%d.%m.%Y') filePrefix = 'teams_' + d.strftime('%Y-%m-%d') #STEP: load web-likes from half-final day sourcePath = router.getRoute(config['source']['web-teams']
DIR_TASK = os.path.dirname(os.path.abspath(__file__)) import json, csv, time, string, itertools, copy, yaml import numpy as np import pandas as pd import datetime as dt CONFIG_FILE_NAME = '011-R.00_config' config = yaml.load(stream=file(DIR_TASK + '\\' + CONFIG_FILE_NAME + '.yml', 'r')) #yaml.dump( config, file( DIR_TASK + '\\config.yml', 'w') ) sys.path.append(DIR_LIB) from lib.router import Router router = Router() # -------------------------------------------------------------------------- today = dt.datetime.now().strftime('%Y-%m-%d--%H-%M') #DEF: def getSourceFile(_sourceKey, _fileIdx): sourceName = config['source'][_sourceKey] sourcePathFile = router.getRoute( sourceName['route'] ) + sourceName['dir'] + sourceName['files'][_fileIdx] return open(sourcePathFile, 'r') #STEP: modify version?
from flask import Flask from lib.router import Router app = Flask(__name__) Router.run(app)