Bom dia, a minha situação é a seguinte: Tenho uma tabela numa base de dados mysql estruturada da seguinte forma:
image_name state type
57260-tracker-_tracker_face awake 0
57261-tracker-_tracker_face drowsiness 1
57268-tracker-_tracker_face noface 2
57289-tracker-_tracker_face distracted 3
57290-tracker-_tracker_face awake 1
57291-tracker-_tracker_face drowsiness 2
57293-tracker-_tracker_face noface 3
E no meu computador, tenho uma pasta de ficheiros texto, com informaçoes referentes à tabela, assim:
test_img/
--57260-tracker-_tracker_face.txt
--57261-tracker-_tracker_face.txt
--57268-tracker-_tracker_face.txt
--etc
Cada ficheiro de texto, contem somente uma linha com a seguinte informaçao:
face=1 lefteye=closed righteye=closed status=drowsiness
O meu objetivo agora é ler a tabela, obter o nome das imagens, procurar o ficheiro de texto com o mesmo nome, abri-lo e ler o status, comparar com o state da tabela, se o da tabela estiver correto, não fazer nada, se estiver errado, trocar pelo que está no ficheiro de texto. É possivel fazer algo assim?
Até agora consegui ligar á base de dados, listar a tabela e abrir o ficheiro .txt respectivo, mas não estou conseguindo ler somente o status no ficheiro de texto para que depois possa comparar.
alguém consegue ajudar? Obrigado
import mysql.connector
from mysql.connector import errorcode
import os
cnx = mysql.connector.connect(user='root', database='healthyroad')
cursor = cnx.cursor()
fileDir = os.path.dirname(os.path.realpath(__file__))
textDir = os.path.join(fileDir, "test_img")
query = ("SELECT nome_imagem, estado, type FROM alertas ")
cursor.execute(query)
for (nome_imagem, estado, type) in cursor:
print nome_imagem
my_file_name = nome_imagem+'.txt'
my_file = open("test_img/"+my_file_name, 'r')
content = my_file.readlines()
print content