import os from Forums.OnniForums.parser import onniForums_description_parser from Forums.OnniForums.parser import onniForums_listing_parser from bs4 import BeautifulSoup baseUrl = './HTML_Pages/06272023/Listing/httponnii6niq53gv3rvjpi7z5axkasurk2x5w5lwliep4qyeb2azagxn4qdonionForumCardingFraud.html' with open(baseUrl, 'r') as file: testHTML = file.read() soup = BeautifulSoup(testHTML, 'html.parser') output = onniForums_listing_parser(soup) print(output) all_descriptions = os.listdir("./HTML_Pages/06272023/Description/")[1:] total = len(all_descriptions) descriptions_with_unicode_error = 0 print("\nTESTING DESCRIPTION PARSER:\n") for desc in all_descriptions: print(f"\nTesting: ./HTML_Pages/06272023/Description/{desc} \n") try: with open(f"./HTML_Pages/06272023/Description/{desc}", "r") as file: test_html = file.read() soup = BeautifulSoup(test_html, features="html.parser") description_output = onniForums_description_parser(soup) print(f"\nTopic name : {description_output[0]}") print(f"Contents : {description_output[1]}") print(f"Users : {description_output[2]}") print(f"Dates posted: {description_output[3]}") print(f"Feedbacks : {description_output[4]}") print(f"Statuses : {description_output[5]}") print(f"Reputations : {description_output[6]}") print(f"Signatures : {description_output[7]}") print(f"Interests : {description_output[8]}\n") except UnicodeDecodeError: descriptions_with_unicode_error += 1 print(f"UnicodeDecodeError: the file `{desc}` cannot be decoded by Python!") print("\nTESTING COMPLETE\n") print(f"Number of descriptions : {total}") print(f"Descriptions w/ errors : {descriptions_with_unicode_error}") print(f"Failure percentage : {round(descriptions_with_unicode_error/total, 4) * 100}%\n")