119 lines
3.4 KiB
Python
119 lines
3.4 KiB
Python
|
import re
|
||
|
import os
|
||
|
import json
|
||
|
from pandas import read_excel, DataFrame
|
||
|
def remove_signs():
|
||
|
str = read_file()
|
||
|
# lines =
|
||
|
pattern = r"\(|\)"
|
||
|
str = re.sub(pattern,'', str)
|
||
|
# str = re.sub(')','', str)
|
||
|
# str = re.sub('/','', str)
|
||
|
|
||
|
return str
|
||
|
|
||
|
def read_file():
|
||
|
with open('./data/DATASET_2.txt', 'r', encoding='utf-8') as file:
|
||
|
text = ''
|
||
|
try:
|
||
|
text = str(file.read())
|
||
|
except:
|
||
|
pass
|
||
|
return text
|
||
|
|
||
|
def read_file_by_address(file_address):
|
||
|
with open(file_address, 'r', encoding='utf-8') as file:
|
||
|
text = ''
|
||
|
try:
|
||
|
text = str(file.read())
|
||
|
except:
|
||
|
pass
|
||
|
return text
|
||
|
|
||
|
def save_to_file(result):
|
||
|
with open('./data/DATASET_3.txt', 'a+', encoding='utf-8') as file:
|
||
|
previous_result = ''
|
||
|
try:
|
||
|
previous_result = file.read()
|
||
|
except:
|
||
|
pass
|
||
|
file.write(result)
|
||
|
file.close()
|
||
|
|
||
|
def save_to_file_by_address(file_address, text):
|
||
|
with open(file_address, 'a+', encoding='utf-8') as file:
|
||
|
previous_result = ''
|
||
|
try:
|
||
|
previous_result = file.read()
|
||
|
except:
|
||
|
pass
|
||
|
file.write(text)
|
||
|
file.close()
|
||
|
|
||
|
|
||
|
def read_from_excel(file_address, column_name):
|
||
|
# خواندن فایل اکسل
|
||
|
data = read_excel(file_address)
|
||
|
|
||
|
# استخراج محتوای ستون مورد نظر
|
||
|
column_data = data[column_name]
|
||
|
return column_data
|
||
|
|
||
|
def add_columndata_to_excel(file_address, column_name, columndata):
|
||
|
|
||
|
# خواندن فایل اکسل
|
||
|
data = read_excel(file_address)
|
||
|
|
||
|
# اضافه کردن ستون جدید به دادهها
|
||
|
data[column_name] = columndata
|
||
|
|
||
|
# ذخیره کردن دادهها در فایل اکسل
|
||
|
data.to_excel(file_address, index=False)
|
||
|
|
||
|
def write_to_excel(data_dict, file_name_and_address):
|
||
|
df = DataFrame(data_dict)
|
||
|
|
||
|
# ذخیره DataFrame به عنوان فایل اکسل
|
||
|
df.to_excel(file_name_and_address, index=False)
|
||
|
return True
|
||
|
|
||
|
def write_to_json(dict, file_address):
|
||
|
|
||
|
# تبدیل دیکشنری به فرمت JSON
|
||
|
json_data = json.dumps(dict, indent=2, ensure_ascii=False)
|
||
|
|
||
|
# ذخیره فایل
|
||
|
with open(file_address, 'w+', encoding='utf-8') as file:
|
||
|
file.write(json_data)
|
||
|
|
||
|
return True
|
||
|
|
||
|
def read_from_json(file_address):
|
||
|
data_dict = []
|
||
|
# خواندن اطلاعات از فایل JSON
|
||
|
with open(file_address, 'r', encoding='utf-8') as file:
|
||
|
loaded_data = json.load(file)
|
||
|
|
||
|
# نمایش اطلاعات خوانده شده
|
||
|
for item in loaded_data:
|
||
|
data_dict.append(item)
|
||
|
return data_dict
|
||
|
|
||
|
|
||
|
def separated_date_format_finder(date_ner):
|
||
|
result = False
|
||
|
date_ner = date_ner.replace('.','/')
|
||
|
date_ner = date_ner.replace('،','/')
|
||
|
date_ner = date_ner.replace('ر','/')
|
||
|
#date_pattern = r'\d{1,2} /\d{1,2} /\d{2,4}|\d{1,2}/\d{1,2}/\d{2,4}|\d{2,4} /\d{1,2} /\d{1,2}|\d{2,4}/\d{1,2}/\d{1,2}'
|
||
|
date_pattern = r'\b(?:(?:1[0-2]|0?[1-9])/?(?:3[01]|[12][0-9]|0?[1-9])/?(?:14[0-7][0-9]|13[0-9][0-9]|128[0-9])|(?:1[0-2]|0?[1-9])/?(?:3[01]|[12][0-9]|0?[1-9])/?(?:14[0-7][0-9]|13[0-9][0-9]|128[0-9]|[0-9]{2}))\b'
|
||
|
regex = re.compile(date_pattern)
|
||
|
match_dates = regex.finditer(date_ner)
|
||
|
for date_item in match_dates:
|
||
|
result = True
|
||
|
break
|
||
|
return result
|
||
|
|
||
|
if __name__ == "__main__":
|
||
|
|
||
|
pass
|