Update app.py
Browse files
app.py
CHANGED
@@ -5,24 +5,21 @@ from io import BytesIO
|
|
5 |
from docx import Document
|
6 |
import gradio as gr
|
7 |
|
8 |
-
# استخراج العناوين والهاشتاغات
|
9 |
def extract_titles_and_hashtags(file):
|
10 |
try:
|
11 |
-
|
12 |
# قراءة محتوى الملف
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
return f"خطأ في قراءة الملف: {str(e)}", None, None
|
18 |
|
19 |
-
# تحليل HTML
|
20 |
try:
|
|
|
21 |
soup = BeautifulSoup(content, 'html.parser')
|
22 |
print("تم تحليل HTML بنجاح.")
|
23 |
except Exception as e:
|
24 |
-
print(f"خطأ
|
25 |
-
return f"خطأ
|
26 |
|
27 |
# استخراج البيانات
|
28 |
data = []
|
@@ -36,7 +33,6 @@ def extract_titles_and_hashtags(file):
|
|
36 |
return "لم يتم العثور على أي بيانات مطابقة.", None, None
|
37 |
|
38 |
for container in desc_containers:
|
39 |
-
print(f"الحاوية: {container.prettify()}") # طباعة محتوى الحاوية لفحصها
|
40 |
title = container.get('aria-label', 'بدون عنوان')
|
41 |
|
42 |
hashtags = [
|
@@ -44,7 +40,6 @@ def extract_titles_and_hashtags(file):
|
|
44 |
for tag in container.find_all('a')
|
45 |
if tag.get_text(strip=True).startswith('#')
|
46 |
]
|
47 |
-
print(f"العنوان: {title}, الهاشتاغات: {hashtags}")
|
48 |
hashtags_counter.update(hashtags)
|
49 |
|
50 |
data.append({"Title": title, "Hashtags": ", ".join(hashtags)})
|
|
|
5 |
from docx import Document
|
6 |
import gradio as gr
|
7 |
|
|
|
8 |
def extract_titles_and_hashtags(file):
|
9 |
try:
|
|
|
10 |
# قراءة محتوى الملف
|
11 |
+
content = file.read() if hasattr(file, 'read') else open(file.name, 'r', encoding='utf-8').read()
|
12 |
+
except Exception as e:
|
13 |
+
print(f"خطأ أثناء قراءة الملف: {str(e)}")
|
14 |
+
return f"خطأ أثناء قراءة الملف: {str(e)}", None, None
|
|
|
15 |
|
|
|
16 |
try:
|
17 |
+
# تحليل HTML باستخدام BeautifulSoup
|
18 |
soup = BeautifulSoup(content, 'html.parser')
|
19 |
print("تم تحليل HTML بنجاح.")
|
20 |
except Exception as e:
|
21 |
+
print(f"خطأ أثناء تحليل HTML: {str(e)}")
|
22 |
+
return f"خطأ أثناء تحليل HTML: {str(e)}", None, None
|
23 |
|
24 |
# استخراج البيانات
|
25 |
data = []
|
|
|
33 |
return "لم يتم العثور على أي بيانات مطابقة.", None, None
|
34 |
|
35 |
for container in desc_containers:
|
|
|
36 |
title = container.get('aria-label', 'بدون عنوان')
|
37 |
|
38 |
hashtags = [
|
|
|
40 |
for tag in container.find_all('a')
|
41 |
if tag.get_text(strip=True).startswith('#')
|
42 |
]
|
|
|
43 |
hashtags_counter.update(hashtags)
|
44 |
|
45 |
data.append({"Title": title, "Hashtags": ", ".join(hashtags)})
|