# -*- coding: utf-8 -*- #!/usr/bin/env python # https://developers.google.com/custom-search/docs/xml_results#countryCodes #https://www.linkedin.com/countserv/count/share?format=jsonp&url=https://www.buzzerstar.com # pip install --upgrade spacy tensorflow gensim sumy keras markovify google-api-python-client beautifulsoup4 """ DEEPWRITER """ #pip3 install tornado import logging from tornado.ioloop import IOLoop from tornado import gen from tornado.iostream import StreamClosedError from tornado.tcpserver import TCPServer from tornado.options import options, define from datetime import datetime as dTime import modules.Fileify as fileify import traceback import socket import time import sys import os define("port", default=###########, help="TCP port to listen on") logger = logging.getLogger(__name__) class EchoServer(TCPServer): message_separator = b'\r\n' def encodeToLatin1(self, text): #n_String=replaceUmlauts(text) encResults = text.encode('utf-8', "ignore") #encResults = text.encode('utf-8', "ignore") return str(encResults.decode('latin-1', "ignore")) @gen.coroutine def handle_stream(self, stream, address): while True: try: dataTemp = yield stream.read_until(self.message_separator) data = dataTemp.decode("utf8").rstrip() logger.info("Received bytes: %s", data) input_from_client=self.encodeToLatin1(data) fromClient=input_from_client.split('#!#@#!#') searchQuery="" realtimehits="" maximumhits="" sidNumber="" gesetzPercentage="" paragraphPercentage="" for ele in fromClient: if ele.find("searchQuery") != -1: searchQuery=ele.replace("searchQuery=", "") if ele.find("realtimehits") != -1: realtimehits=ele.replace("realtimehits=", "") if ele.find("maximumhits") != -1: maximumhits=ele.replace("maximumhits=", "") if ele.find("gesetzPercentage") != -1: gesetzPercentage=ele.replace("gesetzPercentage=", "") if ele.find("paragraphPercentage") != -1: paragraphPercentage=ele.replace("paragraphPercentage=", "") if ele.find("sessionID") != -1: sidNumber=ele.replace("sessionID=", "") print("Start Content Creator:") print("\tsearchQuery:", searchQuery) print("\trealtimehits:",realtimehits) print("\tmaximumhits:",maximumhits) print("\tgesetzPercentage:",gesetzPercentage) print("\tparagraphPercentage:",paragraphPercentage) print("\tsessionID:", sidNumber) timestamp=str(int(time.time())) aCreatStart=str(dTime.now()) logquery="humanTime="+aCreatStart+";"+"unixTime="+timestamp+";"+"sessionID="+sidNumber+";"+"inputTcpClient="+data+";"+"mk="+searchQuery+";"+"paragraphPercentage="+paragraphPercentage+";"+"gesetzPercentage="+gesetzPercentage+";"+"maximumhits="+maximumhits+";"+"realtimehits="+realtimehits+";"+"\n" fo = open("/home/Framework/Prototyp/TreadingServerPremiumLog.txt", "a+") fo.write(logquery); fo.close() print("Calling: python3 /home/Framework/Prototyp/DowseryPrototyp.py --suchbegriff \""+searchQuery+"\" --echtzeittreffer \""+realtimehits+"\" --gesetzPercentage \""+gesetzPercentage+"\" --paragraphPercentage \""+paragraphPercentage+"\" --maximaleergebnisse \""+maximumhits+"\" --sessionID \""+sidNumber+"\"") os.system("python3 /home/Framework/Prototyp/DowseryPrototyp.py --suchbegriff \""+searchQuery+"\" --echtzeittreffer \""+realtimehits+"\" --gesetzPercentage \""+gesetzPercentage+"\" --paragraphPercentage \""+paragraphPercentage+"\" --maximaleergebnisse \""+maximumhits+"\" --sessionID \""+sidNumber+"\"") input_from_client_bytes="" input_from_client="" #if not data.endswith(b"\n"): # data = data + b"\n" #yield stream.write(data) return True; except StreamClosedError: logger.warning("Lost client at host %s", address[0]) stream.close(exc_info=True) return #break except Exception as e: print(e) if __name__ == "__main__": options.parse_command_line() server = EchoServer() server.listen(options.port) logger.info("Listening on TCP port %d", options.port) IOLoop.current().start()