def handle_client(client): # Takes client socket as argument. """ Handles a single client connection. """ try: while 1: # server receives the message every time client sends it. name = client.recv(buffer_size).decode("utf8") msg_after_split = name.split('\r\n\r\n') body = json.loads(msg_after_split[1]) name = body['message'] # check the bad name here. if re.match('^[a-z A-Z]+$', name): break else: error_message = Helper().encodehttprequest(messsage='Only alphabets are allowed no number or special characters are allowed.', timestamp=time.time()) client.send(error_message.encode()) print(name, ':handles by', threading.current_thread()) # print('body is: ', body) welcome = 'Welcome %s! If you ever want to quit, type quit to exit.' % body['message'] # Use to generate response in HTTP format. print(Helper().encodehttprequest(messsage=welcome, timestamp=time.time())) encoded_message = Helper().encodehttprequest(messsage=welcome, timestamp=time.time()) # print("Server Sent!!: ", encoded_message) client.send(encoded_message.encode()) msg = "%s has joined the chat!" % name # print("\nPre Broadcast") broadcast(msg, name) # print("\nPost Broadcast") clients[client] = name while True: # used to receive message from client. msg = client.recv(buffer_size).decode() msg_after_split = msg.split('\r\n\r\n') body = json.loads(msg_after_split[1]) # print("body receive at the server is: ", body) msg = body['message'] # print("client name: ", clients.get(client)) # print("Server Rec2", msg) if msg != "quit": # print("current source name is: ",) broadcast(msg, name, name + ": ") else: encoded_message = Helper().encodehttprequest(messsage='quit', timestamp=time.time()) client.send(encoded_message.encode()) client.close() del clients[client] broadcast("%s has left the chat." % name,name) break except OSError: pass # if someone left the chat it goes here. closed_connection_msg = ' has closed connection forcefully.' print(name, closed_connection_msg) file = open('log.txt', '+a') file.write(json.dumps({'name': name, 'message': closed_connection_msg})) file.write('\n') file.close()
def build_model(): method = request.args.get('method') if method == 'build': connection = MongoClient('mongodb+srv://hrlanes-mongodb-reader:hrlanes%[email protected]', 27017) db = connection['hrlanes-web-db'] data = db['users'] ex = data.find({"$and": [{'ProfileSummaryInfo': {"$exists": True}}, {'recommenderProcessed': {"$exists": True}}, {'recommenderProcessed': True }]}) helper = Helper() d = helper.createDictionary(ex) resumeList = [] for key in d: if len(d[key])>0: # check if resumes/details exist doc_included = [] for x in d[key]: resumeList.append(x[1]) doc_included.append(x[0]) documents = [] for f in resumeList: documents.append(helper.cleanTextAndTokenize(f)) helper.create_tfidf(str(key), documents, doc_included) return " " elif method =='recommend': exp = request.args.get('e') farea = request.args.get('f') jd = request.args.get('jd') if exp and farea and jd: helper = Helper() '''with open (jd, 'r') as f: jobd = f.read() #for local storage path jobd = helper.extract_text_from_url(jd) #for extracting text from pdf url -> from blob storage ''' jobd = str(jd) preprocessed = helper.cleanTextAndTokenize(jobd) #tokenizing text sim_scores = helper.recommend(exp, farea, preprocessed) #returning candidate IDs if len(sim_scores)==0: return ("Sorry! No matching candidates!") response = app.response_class( response=json.dumps(str(dict(sim_scores))), status=200, mimetype='application/json') return response else: return "Please enter exp, f area and jd in the request body!" else: return "Please enter the method in request body: build or recommend!"
def plot_polynomial(x: [], y: []) -> []: # calculate polynomial z = np.polyfit(x, y, 4) polynomial1d = np.poly1d(z) # calculate new x's and y's x_new = np.linspace(x[0], x[-1], 1000) y_new = polynomial1d(x_new) der1deg = np.polyder(polynomial1d, 1) der2deg = np.polyder(polynomial1d, 2) curvature = [signed_curvature(t, der1deg, der2deg) for t in x_new] curvature_rescaled = Helper().rescaleTableToNewValues(curvature, 0, 400) print(curvature) print("\n\n", curvature_rescaled) dh.frames = Helper.speeds_to_json_frames(curvature_rescaled) json_vals = json.dumps(Helper.speeds_to_json_frames(curvature_rescaled)) print(json_vals) with open( '/home/wojciech/catkin_ws/src/beginner_tutorials/scripts/steering_test.json', 'w') as outfile: json.dump(json_vals, outfile) print("!saved") plt.plot(x_new, y_new, 'b--') plt.plot(x_new, curvature, 'g-') plt.show()
def configure(self): helper = Helper() if not helper.checkFile('/etc/bash_completion.d/git-completion.bash'): print "-- add bash completion" helper.wget( 'https://raw.githubusercontent.com/git/git/master/contrib/completion/git-completion.bash', '/etc/bash_completion.d/') if 'name' in self.attrs: print "-- set your name in git config" helper.execute('git config --global user.name "' + self.attrs['name'] + '"') if 'email' in self.attrs: fileName = helper.homeFolder() + '.ssh/id_rsa' print "-- set your email in git config" helper.execute('git config --global user.email "' + self.attrs['email'] + '"') if 'passphrase' in self.attrs and len( self.attrs['passphrase']) > 4: print "-- create ssh key for auto-authorization (add string below to https://github.com/settings/ssh)" if not helper.checkFile(fileName): helper.execute('mkdir ' + helper.homeFolder() + '.ssh') helper.execute('ssh-keygen -f "' + fileName + '" -N "' + self.attrs['passphrase'] + '" -t rsa -C "' + self.attrs['email'] + '"') print helper.execute('cat ' + fileName + '.pub')
def placeWidgets(self): #heading self.lbHeader = QLabel("Oops, Your Files\nhave been encrypted!", self) self.lbHeader.setFont(self.headerFont) self.lbHeader.setStyleSheet("QLabel { color: white;}") self.lbHeader.setGeometry(10, 15, 500, 120) self.infoText = QTextEdit(self) self.infoText.setReadOnly(True) self.infoText.setGeometry(205, 150, 550, 360) h = Helper() with open(h.path('res/info.html'), 'r') as encrypt_info_file: encrypt_text = encrypt_info_file.read().replace('\n', '') self.infoText.setHtml(encrypt_text) self.progressBar = QProgressBar(self) self.progressBar.setRange(0, 0) self.progressBar.setGeometry(20, 550, 500, 24) self.progressBar.hide() #button decrypt self.btnDecrypt = QPushButton("Decrypt", self) self.btnDecrypt.move(650, 550) self.btnDecrypt.setStyleSheet( "QPushButton {background-color:black; color: white; width:100px; height:24px;} " "QPushButton:hover {color:green;}") self.btnDecrypt.clicked.connect(self.askQuestions)
def setbg(self): h = Helper() oImage = QImage(h.path("res/gui_bg.jpg")) sImage = oImage.scaled(QSize(800, 600)) # resize Image to widgets size palette = QPalette() palette.setBrush(10, QBrush(sImage)) # 10 = Windowrole self.setPalette(palette)
def __init__(self): """ 初始化界面 """ # # 成员变量 # super().__init__() self.isPolling = False # 是否在轮询中 self.helper = Helper() # 控制器 self.polling_timer = None # 轮询定时器,设成成员变量是为了能够取消定时器 self.play_sound = True # 默认允许播放蜂鸣声 # # 初始化界面 # self.ui = QUiLoader().load('./QtDesigner/main_window.ui' ) # 加载 UI 文件,self.ui 就是应用中 MainWindow 这个对象 self.init_window() # 初始化主窗口 self.init_interval_combobox() # 初始化轮询时间下拉框 self.init_splitter() # 初始化分离器 self.init_table() # 初始化表格 self.init_output_edit() # 初始化输出信息的窗口 self.init_menu_bar() # 初始化菜单 self.ui.btn_submit.clicked.connect(self.start_polling) # 绑定点击事件
def body(self, master): self.parent = master self.frame = tk.Frame(self.parent, width=500) self.resizable(width=False, height=False) self.iconbitmap('tarsier.ico') self.storage = StorageDb('wfm.sqlite') self.appt_helper = AppointmentHelper() self.settings = Settings() self.helper = Helper() self.init_variables() self.tab_control = ttk.Notebook(self.parent) self.img_tab = {} self.tabs = ["Appointment Booking Detail", "Authentication"] for tab in self.tabs: tabPage = ttk.Frame( self.tab_control ) # first page, which would get widgets gridded into it self.img_tab[tab] = PhotoImage(file=str("images/%s.png" % tab.replace(' ', ''))) self.tab_control.add(tabPage, text=tab, image=self.img_tab[tab], compound=LEFT) if tab is 'Authentication': self.create_authTab(tabPage) else: self.create_filterTab(tabPage) self.tab_control.pack(expand=1, fill="both") # Pack to make visible self.frame.pack(expand=1, fill="both", padx=8, pady=5)
def __init__(self, base_url: str): self.base_url = base_url.strip('/') self.helper = Helper(base_url) self.recording = Recording(base_url) self.counter = Counter(base_url) self.webcam = Webcam(base_url)
class Core: sid = "12345" name = "ZOMBIE" start_time = datetime.utcnow() end_time = datetime.utcnow() diff_time = 0 helper = Helper() def __init__(self, sid, name, start_time, end_time, **kwargs): self.sid = sid self.name = name self.start_time = start_time self.end_time = end_time self.create_diff_time(self.start_time, self.end_time) def create_diff_time(self, start, end): start = self.helper.convert_datetime_to_epoch(start) end = self.helper.convert_datetime_to_epoch(end) self.diff_time = end - start def __eq__(self, other): return self.sid == other.sid def __repr__(self): return str( "[SID : {sid} => Name='{name}', Start time {start}, End time {end}, difference {diff}]" .format(sid=self.sid, name=self.name, start=self.start_time, end=self.end_time, diff=self.diff_time))
class TakeFotoScreen(Screen): camera = Camera() res = ImageResize() helper = Helper() resize_thread = None def ThreadCheck(self): return self.resize_thread.isAlive() def on_enter(self): app = App.get_running_app() taskshort = app.TASK_SHORT if app.TASK_SHORT else "" tasklong = app.TASK_LONG if app.TASK_LONG else "" self.camera.textlong = tasklong self.camera.textshort = taskshort self.camera.start() app.IMAGENAME = self.camera.getName() imgname = self.camera.getName() # Resize Deamon self.resize_thread = threading.Thread(name='resize_deamon', target=self.res.imgresize, args=(self.camera.getName(),)) self.resize_thread.start() app.FROMTAKEFOTO = True app.FROMTASKFOTO = True if tasklong else False self.parent.current = 'FotoScreen'
def main(self): enemy = Enemy() helper = Helper() self.print_board(helper) position = raw_input('Enter position (row # column #) : ') while position != 'q': position_to_move = tuple(position.replace(' ', '')) if helper.check_basic_validations(position_to_move): helper.board[int(position_to_move[0]), int(position_to_move[1])] = "X" self.print_board(helper) if self.check_win_condition('X', helper): print 'You win!' position = 'q' break if len(helper.get_current_positions('X')) + len( helper.get_current_positions('O')) == 9: print "It's a tie!" break print '\n... Computer is thinking ...\n' time.sleep(1) enemy.ai(helper) self.print_board(helper) if self.check_win_condition('O', helper): print 'Computer Wins!' break position = raw_input('Enter position : ')
class GalleryScreen(Screen): helper = Helper() imagepath = 'pics/mail/' imageindex = {} def on_enter(self): self.ids.carouselid.clear_widgets() image_files = [f for f in listdir(self.imagepath) if isfile(join(self.imagepath, f))] #print(image_files) image_files.sort(reverse=True) counter = 0 for image in image_files: #src = "http://placehold.it/480x270.png&text=slide-%d&.png" % i #image = AsyncImage(source=src, allow_stretch=True) #self.ids.carouselid.add_widget(image) #print(image_files) fullimage = self.imagepath + image #print(fullimage) imageobject = AsyncImage(source=fullimage, allow_stretch=True) self.ids.carouselid.add_widget(imageobject) self.imageindex[counter] = fullimage counter += 1 if counter >= int(settings.myList['config']['gallery']['numberofslides']): break def get_image(self): app = App.get_running_app() slide = self.ids.carouselid.index #print(self.imageindex[slide]) #print(slide) app.MAILIMAGE = self.imageindex[slide]
def main(): # Elliptic Curve Parameters a = 17 b = 50 m = 191 ec = EllipticCurveArithmetic(a, b, m) curvePoints = ec.getCurvePoints() h = Helper() h.generateCharacterPointMappings(curvePoints) # Base Point/Generator of Elliptic Curve G = generateReferencePoint(curvePoints, h) el = EllipticCurveCryptography(G, len(curvePoints), h, ec) # Receiver's Public, Private keys receiver = el.generateKey(len(curvePoints)) message = input("Enter message: ") print("Original message:", message) encryptedMessage = el.Encrypt(message, receiver.getPublicKey()) print("Encrypted message:", encryptedMessage) decryptedMessage = el.Decrypt(encryptedMessage, receiver.getPrivateKey()) print("Decrypted message:", decryptedMessage)
def __init__(self): self.helper = Helper() self.unigram_inverted_index = self.helper.unigram_inverted_index self.corpus_term_count = self.helper.corpus_frequency( self.unigram_inverted_index) self.CONSTANT = 0.35 self.number_of_ranked_docs = 100
def getQuestions(): h = Helper() l = [] with open(h.path('res/questions.txt'), 'r') as f: for q in f: l.append(q) return l
def generateAllRecyclingChildren(self): avaliableHor = self.helper.findAllAvaliableHorizontalCards() avaliableVer = self.helper.findAllAvaliableVerticalCards() avaliableCards = avaliableHor + avaliableVer hangOverList = self.curCardList.copy() if self.preCard != '0000': hangOverList.remove(self.preCard) for cards in avaliableCards: commandList = cards.split(':') Fir = commandList[0].split(',') Sec = commandList[1].split(',') code = Fir[0] + Fir[1] + Sec[0] + Sec[1] hangOverList.remove(code) locList = self.decoding(cards) curMove = commandList[2] x1 = locList[0] y1 = locList[1] x2 = locList[2] y2 = locList[3] newBoard = copy.deepcopy(self.curBoard) newBoard[x1][y1] = '00' newBoard[x2][y2] = '00' newCardList = self.curCardList.copy() newCardList.remove(code) newHelper = Helper(newBoard, newCardList, '0000') curCommand = curMove + commandList[0].split( ',')[0] + commandList[0].split(',')[1] self.getRecyclingChildren(curCommand, newHelper) self.getHangoverRecyclingChildren(hangOverList)
class TaskButton(Button): helper = Helper() def get_task(self): task = self.helper.getRandomTask() app = App.get_running_app() app.TASK_SHORT = task["short"] app.TASK_LONG = task["long"]
class SendEmailScreen(Screen): helper = Helper() mail = SendEmail() # Wird aufgerufen sobald sich im Textfeld etwas aendert # schraenkt dann die auswahl der bereits vorhandenen Mailadressen ein def inputChanged(self, text, *args): mailAddresses = self.helper.getMailAddresses() filteredAdrresses = [] # loop ueber alle bereits vorhandenen Mail Adressen for mail in mailAddresses: # Wenn ein teilstueck der eingabe in der Mailadresse vorhanden wird die Adresse in das Array der gefilterten adressen hinzugefuegt if text in mail: filteredAdrresses.append(mail) # loescht die Auswahlliste der Emails self.ids.grid.clear_widgets() # wenn gefilterte Adressen vorhanden if filteredAdrresses: # loop ueber gefilterte Adressen um diese zur Auswahl in Scrollview anzuzeigen for address in filteredAdrresses: button = Button(text=address, size_hint_y=None, height=40, font_size=16) button.bind(on_press=partial(self.setTextInput, address)) self.ids.grid.add_widget(button) # Wird aufgerufen sobald auf "Senden" gedrueckt wird def sendEmail(self, mailAddress): # Textfeld mit Emailadresse wieder leeren self.ids.emailInput.text = "" # prueft ob Emailadresse bereits gespeichert ist, falls nein speichern if self.helper.findMailAddressByMail(mailAddress) == None: self.helper.addMailAddress(mailAddress) mailtext = self.helper.getMailText() app = App.get_running_app() mailimage = app.MAILIMAGE app.MAILIMAGE = None # Email im Hintergrund verschicken mail_thread = threading.Thread(target=self.mail.send, args=(mailAddress,mailtext,mailimage)) mail_thread.start() # Wieder zum Startbildschirm zuruek navigieren self.parent.current = 'MenuScreen' # Wird aufgerufen wenn Benutzer auf eine Emailadresse aus der Vorschlagsliste klickt # schreibt die Auswahl in das Textfeld def setTextInput(self, address, *args): self.ids.emailInput.text = address
def __init__(self): self.helper = Helper() self.unigram_inverted_index = self.helper.unigram_inverted_index self.corpus_term_count = self.helper.corpus_frequency( self.unigram_inverted_index) self.CONSTANT = 0.35 self.number_of_ranked_docs = 100 self.stopwords_file = "../../test-collection/common_words" self.prepare_stoplist()
def __init__(self, k1=1.2,k2=100,b=0.75): self.helper = Helper() self.k1 = k1 self.k2 = k2 self.b = b self.calcAVDL() self.queryFrequencyDict = defaultdict(int) self.docScoreDict = defaultdict(int) self.main()
def __init__(self): self.helper = Helper() self.documnetVector = defaultdict(dict) self.queryVector = defaultdict(str) self.docScoreDict = defaultdict(int) self.stopwords_file = "../test-collection/common_words" self.output_dir = "./stopped_pages_output/" self.prepare_stoplist() self.stopwords_file = "../test-collection/common_words" self.prepare_stoplist()
def __init__(self, image=None): if image != None: self.image = cv2.imread(image, cv2.IMREAD_GRAYSCALE) else: image = None self.model = DigitRecognizer() self.model.load_model('num_reader') self.digits = None self.grid = None self.helper = Helper()
def body(self, master): self.parent = master self.frame = tk.Frame(self.parent) self.resizable(width=False, height=False) self.storage = StorageDb('wfm.sqlite') self.settings = Settings() self.helper = Helper() self.init_variables() self.create_dispatcherEntries() self.frame.pack(expand=1, fill="both")
def __init__(self, k1=1.2, k2=100, b=0.75): self.helper = Helper() self.k1 = k1 self.k2 = k2 self.b = b self.stopwords_file = "../../test-collection/common_words" self.prepare_stoplist() self.calcAVDL() self.queryFrequencyDict = defaultdict(int) self.docScoreDict = defaultdict(int) self.main()
def run(self): sqlDb = Helper() mongoDb = Reserve() # mongoDb.clearBuy() d = int(self.day) for h in range(9, 23): Domain.BUY_HOUR = h for m in range(0, 60): res = sqlDb.buy(d, h, m) mongoDb.storeBuy(d, h, m, res) Domain.BUY_MIN = m sqlDb.close()
def run(self): sqlDb = Helper() mongoDb = Reserve() # mongoDb.clearRanking() d = int(self.day) for h in range(9, 23): Domain.RANK_HOUR = h for m in range(0, 60): res = sqlDb.ranking(d, h, m) mongoDb.storeRanking(d, h, m, res) Domain.RANK_MIN = m sqlDb.close()
def run(self): sqlDb = Helper() mongoDb = Reserve() # mongoDb.clearAverage() d = int(self.day) for h in range(9, 23): Domain.AVE_HOUR = h for m in range(0, 60): res = sqlDb.average(d, h, m) mongoDb.storeAverage(d, h, m, res) Domain.AVE_MIN = m sqlDb.close()
def run(self): sqlDb = Helper() mongoDb = Reserve() # mongoDb.clearNum() d = int(self.day) for h in range(9, 23): Domain.NUM_HOUR = h for m in range(0, 60): res = sqlDb.numberOfPeople(d, h, m) mongoDb.storeNumOfPeople(d, h, m, res) Domain.NUM_MIN = m sqlDb.close()
def run(self): sqlDb = Helper() mongoDb = Reserve() # mongoDb.clearGuiding() d = int(self.day) for h in range(9, 23): Domain.GUIDE_HOUR = h for m in range(0, 60): res = sqlDb.guiding(d, h, m) mongoDb.storeGuiding(d, h, m, res) Domain.GUIDE_MIN = m sqlDb.close()