Как получить консольный вывод в TXT-файл (с помощью сервера флеш-памяти Python) - PullRequest
0 голосов
/ 29 октября 2018

Предположим, у меня есть серверный код, и когда вызывается функция savePersonList (), результат, напечатанный на консоли, должен быть сохранен в текстовом файле.

#server coding

app = Flask(__name__)
def allowed_file(filename):
  # this has changed from the original example because the original did not work for me
    return filename[-3:].lower() in ALLOWED_EXTENSIONS


@app.route('/', methods=['GET', 'POST']) #integrate code below function
def upload_file(): 

    if request.authorization and request.authorization.username == 'user1' and request.authorization.password == 'pass2': #login code line
        if request.method == 'POST':
            print("This is a post Request \n\n")
            file = request.files['file']
            if file and allowed_file(file.filename):
                print("File Sent is valid \n\n")
                print('**found file', file.filename)
                filename = secure_filename(file.filename) #use this from existing code before calling video capture 
                file.save(os.path.join(app.config['UPLOAD_FOLDER'], filename))  
    #code
                ''' This is the start of face recongition script '''
                CF.Key.set('d7c5495c64a44bc692761cd7c45ad56e')
                CF.BaseUrl.set('https://southeastasia.api.cognitive.microsoft.com/face/v1.0/')

                firstRun = True
                lastRun  = False

                #savePersonList()

Ответы [ 3 ]

0 голосов
/ 29 октября 2018

, если вы работаете в Linux, просто используйте python app.py > file.txt (при условии, что файл file.txt создан) также может работать на Windows.

и добавьте регистратор в ваше приложение для колб, как описано в документах

так что вы можете написать это для каждого запроса самостоятельно Затем file.txt действует как ваш журнал отладки. Надеюсь, это поможет.

0 голосов
/ 31 января 2019

Ответ srinath samala правильный в общем случае, но, как вы упомянули в комментарии, не все выходные данные перенаправляются в файл.


Это связано с тем, что некоторые выходные данные вашего приложения Flask перенаправляются на STDERR, а не только на STDOUT.

Чтобы перенаправить оба в ваш текстовый файл, вы хотите использовать это:

python app.py >> file.txt 2>&1

0 голосов
/ 29 октября 2018

Вы можете перенаправить sys.stdout в файл (см. Перенаправить стандартный вывод в файл на Python? ), но может быть лучше использовать модуль ведения журнала.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...