В настоящее время я пытаюсь запустить следующий фрагмент кода, но постоянно получаю сообщение об ошибке:
pywintypes.com_error: (-2147417842, 'Приложение вызвало интерфейс, который был упорядочен для другого потока. ', Нет, Нет)
Нужно ли выполнять функцию flask через отдельный поток. Нет ли другого способа просто создать глобальный экземпляр Excel и использовать его для открытия и изменения отдельных рабочих книг?
Любая помощь по этому поводу будет принята с благодарностью.
from flask import Flask, request, jsonify
import json
import pythoncom
import win32com.client
from win32com.client import Dispatch
xl = None
xl = win32com.client.Dispatch("Excel.Application")
app = Flask(__name__)
@app.route("/check", methods=['POST'])
def check():
pythoncom.CoInitialize()
if request.method == 'POST':
data = request.get_json()
fname = data['fname']
phName = data['PH_Name']
liName = data['LI_NAME']
ppm = data['PPM']
policyTerm = data['Policy_Term']
sumAssured = data['Sum_Assured']
wb = None
if xl :
wb = xl.Workbooks.Open(fname)
inp_sheet = wb.Sheets["Inputs"]
#read data from sheet
data = inp_sheet.Range('D8').Value
wb.Close(False)
xl.Quit()
return (data)
if __name__ == '__main__':
app.run(threaded=True, port=5001, debug=True)