Spaces:
Sleeping
Sleeping
File size: 1,917 Bytes
2c542cb ec83357 a511cad ec83357 c39e07e eab8d68 2c7b20a eab8d68 73b44db 2c7b20a 73b44db 4b5ea7f 73b44db e1bba7d 73b44db e1bba7d 4b5ea7f e1bba7d 4b5ea7f 73b44db 2c7b20a eab8d68 36fd41c |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 |
import gradio as gr
from bs4 import BeautifulSoup
from bs4.element import Comment
import bibtexparser
from dateutil import parser
import json
import requests
import tldextract
from collections import defaultdict
import re
import mwparserfromhell
from transformers import pipeline
from source_eval_model import check_source_quality
from talk_page_analysis import tone_talkpage
def combined_function(wiki_url):
tones = tone_talkpage(wiki_url)
flags = check_source_quality(wiki_url)
negative_tones = set(["anger", "disgust", "fear", "sadness", "pessimism"])
final_text = ""
if set(i[0] for i in tones).intersection(negative_tones):
final_text += "Beware! This page might be controversial among editors. We have detected extreme emotions in the Talk page. The tones detected and their probabilities are: \n"
else:
final_text += "The tones detected and their probabilities are: \n"
for tone in tones:
final_text += tone[0] + ": " + str(round(tone[1]*100, 2)) + "% \n"
red = flags[0]
yellow = flags[1]
green = flags[2]
unknown = flags[3]
final_text += "There are " + str(len(red))+ " red flags: \n"
for red_ele in red:
final_text += red_ele[0] + " published by " + red_ele[1] + "\n"
print("\n")
final_text += "There are " + str(len(yellow))+ " yellow flags: \n"
for yel_ele in yellow:
final_text += yel_ele[0] + " published by " + yel_ele[1] + "\n"
print("\n")
final_text += "There are " + str(len(green))+ " green flags: \n"
for green_ele in green:
final_text += green_ele[0] + " published by " + green_ele[1] + "\n"
print("\n")
final_text += "There are " + str(len(unknown))+ " unknowns: \n"
for unk_ele in unknown:
final_text += unk_ele[0]
return final_text
iface = gr.Interface(fn=combined_function, inputs="text", outputs="text")
iface.launch() |