results are now saved in db

This commit is contained in:
Björn Ruthotto 2024-10-08 10:12:52 +02:00
parent 2b0b5ec412
commit 62f42e61a9
3 changed files with 28 additions and 6 deletions

View File

@ -34,5 +34,6 @@ class VeraMindInference:
return {
"result": "FAKE" if is_fake else "REAL",
"confidence": float(confidence)
"confidence": float(confidence),
"is_fake": is_fake
}

View File

@ -1,14 +1,14 @@
from views.mainScreen import MainFrame
from models.data import TextData
from Ai.interence import VeraMindInference
from utils.database.database import FakeNewsChecker
from urllib.parse import urlparse
class MainFrameController:
def __init__(self,frame:MainFrame) -> None:
self.frame = frame
self.model_inference = VeraMindInference('VeraMind-Mini')
self.db = FakeNewsChecker()
def get_textdata(self) -> TextData:
text_data = TextData()
@ -21,7 +21,9 @@ class MainFrameController:
def press_check_button(self):
text_data = self.get_textdata()
print(f"text:{text_data.text}")
self.prediction(text_data)
text_data = self.prediction(text_data)
self.addDB(textData=text_data)
self.frame.output_textbox.configure(state="normal")
self.frame.output_textbox.delete("0.0", "end")
self.frame.output_textbox.insert("0.0",f"{text_data.get_output()}")
@ -31,6 +33,24 @@ class MainFrameController:
result = self.model_inference.predict(text_data.text)
text_data.confidence = result["confidence"]
text_data.result = result["result"]
text_data.is_fake_news = result["is_fake"]
print(f"Prediction: {text_data.result}")
print(f"Confidence: {text_data.confidence}")
return text_data
return text_data
def addDB(self, textData: TextData):
if self.is_valid_url(textData.url):
parsed_url = urlparse(textData.url)
anbieter = parsed_url.netloc.split('.')[-2] + '.' + parsed_url.netloc.split('.')[-1]
print("Hauptdomain:", anbieter)
self.db.insert_data(url= textData.url, anbieter= anbieter,is_fake_news=textData.is_fake_news)
else:
self.db.insert_data(url= textData.url, anbieter= "None",is_fake_news=textData.is_fake_news)
def is_valid_url(self, url):
try:
result = urlparse(url)
return all([result.scheme, result.netloc])
except ValueError:
return False

View File

@ -5,6 +5,7 @@ class TextData:
self.url = url
self.text = ""
self.result = ""
self.is_fake_news = False
self.confidence = None
self._extractor = None