функция print_file не работает в asyn c function python3 - PullRequest
0 голосов
/ 04 мая 2020

У меня есть функция scrap_data (). который я использую в нем wrt_to_file. wrt_to_file - это функция, записывающая все в файл без проблем. но когда я использую эту функцию в scrap_data (), ничего не пишу в файл. Я думаю, что проблема заключается в функции asyn c. Но я не знаю, почему. scrap_data () запускается без проблем, и я знаю, что data_df генерируется функцией bu.

Мой код:

connectionData = [...]
async def websocketConnect():
    def startReceiving(arg):
        r = requests.get(".../realTimeServer/start", params = wsParams)
    r = requests.get(".../realTimeServer/negotiate", params = {...})
    response = r.json()
    wsParams = {...}
    websocketUri = f".../realTimeServer/connect?{urllib.parse.urlencode(wsParams)}"
    result = []
    async with websockets.connect(websocketUri) as websocket:
        thread = Thread(target = startReceiving, args = (0, ))
        thread.start()
        for i in range(0,10):
            data = await websocket.recv()
            jsonData = json.loads(data)
            result= jsonData["M"][0]["A"][0]
            break
        thread.join()
        data_df = [[..., json.dumps(result, indent=4, sort_keys=True)]]
        wrt_to_file(data_df)
    return 
def scrap_data():
    asyncio.ensure_future(websocketConnect())
    return
...