feat: use dynamic domains when encrypted

This commit is contained in:
Andres Rodriguez
2023-08-18 01:51:13 -04:00
parent b9f123fbea
commit dbd1802dd6

View File

@@ -9,7 +9,7 @@ import threading
from Whatsapp_Chat_Exporter.utility import WhatsAppIdentifier from Whatsapp_Chat_Exporter.utility import WhatsAppIdentifier
try: try:
from iphone_backup_decrypt import EncryptedBackup, RelativePath from iphone_backup_decrypt import EncryptedBackup, RelativePath
from iphone_backup_decrypt import FailedToDecryptError, Domain from iphone_backup_decrypt import FailedToDecryptError
except ModuleNotFoundError: except ModuleNotFoundError:
support_encrypted = False support_encrypted = False
else: else:
@@ -21,15 +21,15 @@ def extract_encrypted(base_dir, password, identifiers):
print("Decrypting WhatsApp database...") print("Decrypting WhatsApp database...")
try: try:
backup.extract_file(relative_path=RelativePath.WHATSAPP_MESSAGES, backup.extract_file(relative_path=RelativePath.WHATSAPP_MESSAGES,
output_filename="7c7fba66680ef796b916b067077cc246adacf01d") output_filename=identifiers.MESSAGE)
backup.extract_file(relative_path=RelativePath.WHATSAPP_CONTACTS, backup.extract_file(relative_path=RelativePath.WHATSAPP_CONTACTS,
output_filename="b8548dc30aa1030df0ce18ef08b882cf7ab5212f") output_filename=identifiers.CONTACT)
except FailedToDecryptError: except FailedToDecryptError:
print("Failed to decrypt backup: incorrect password?") print("Failed to decrypt backup: incorrect password?")
exit() exit()
extract_thread = threading.Thread( extract_thread = threading.Thread(
target=backup.extract_files_by_domain, target=backup.extract_files_by_domain,
args=(Domain.WHATSAPP, Domain.WHATSAPP) args=(identifiers.DOMAIN, identifiers.DOMAIN)
) )
extract_thread.daemon = True extract_thread.daemon = True
extract_thread.start() extract_thread.start()