Spaces:
Runtime error
Runtime error
import re | |
import os | |
import time | |
from colorama import Fore | |
class Documents(): | |
def __init__(self, generated_content = "", parse = True, predifined_filename = None): | |
self.directory: str = None | |
self.generated_content = generated_content | |
self.docbooks = {} | |
if generated_content != "": | |
if parse: | |
regex = r"```\n(.*?)```" | |
matches = re.finditer(regex, self.generated_content, re.DOTALL) | |
for match in matches: | |
filename = "requirements.txt" | |
doc = match.group(1) | |
self.docbooks[filename] = doc | |
else: | |
self.docbooks[predifined_filename] = self.generated_content | |
def _update_docs(self, generated_content, parse = True, predifined_filename = ""): | |
new_docs = Documents(generated_content, parse, predifined_filename) | |
for key in new_docs.docbooks.keys(): | |
if key not in self.docbooks.keys() or self.docbooks[key] != new_docs.docbooks[key]: | |
print("{} updated.".format(key)) | |
print(Fore.WHITE + "------Old:\n{}\n------New:\n{}".format(self.docbooks[key] if key in self.docbooks.keys() else "# None", new_docs.docbooks[key])) | |
self.docbooks[key] = new_docs.docbooks[key] | |
def _rewrite_docs(self): | |
directory = self.directory | |
if not os.path.exists(directory): | |
os.mkdir(directory) | |
print("{} Created.".format(directory)) | |
for filename in self.docbooks.keys(): | |
with open(os.path.join(directory, filename), "w", encoding="utf-8") as writer: | |
writer.write(self.docbooks[filename]) | |
print(os.path.join(directory, filename), "Writed") | |
def _get_docs(self): | |
content = "" | |
for filename in self.docbooks.keys(): | |
content += "{}\n```\n{}\n```\n\n".format(filename, self.docbooks[filename]) | |
return content | |