mirror of
https://github.com/KnugiHK/WhatsApp-Chat-Exporter.git
synced 2026-04-25 15:31:38 +00:00
No longer support direct execution on the script
This commit is contained in:
@@ -750,60 +750,3 @@ def create_html(
|
|||||||
print(f"Generating chats...({current}/{total_row_number})", end="\r")
|
print(f"Generating chats...({current}/{total_row_number})", end="\r")
|
||||||
|
|
||||||
print(f"Generating chats...({total_row_number}/{total_row_number})", end="\r")
|
print(f"Generating chats...({total_row_number}/{total_row_number})", end="\r")
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
|
||||||
from optparse import OptionParser
|
|
||||||
parser = OptionParser()
|
|
||||||
parser.add_option(
|
|
||||||
"-w",
|
|
||||||
"--wa",
|
|
||||||
dest="wa",
|
|
||||||
default="wa.db",
|
|
||||||
help="Path to contact database")
|
|
||||||
parser.add_option(
|
|
||||||
"-m",
|
|
||||||
"--media",
|
|
||||||
dest="media",
|
|
||||||
default="WhatsApp",
|
|
||||||
help="Path to WhatsApp media folder"
|
|
||||||
)
|
|
||||||
# parser.add_option(
|
|
||||||
# "-t",
|
|
||||||
# "--template",
|
|
||||||
# dest="html",
|
|
||||||
# default="wa.db",
|
|
||||||
# help="Path to HTML template")
|
|
||||||
(options, args) = parser.parse_args()
|
|
||||||
msg_db = "msgstore.db"
|
|
||||||
output_folder = "temp"
|
|
||||||
contact_db = options.wa
|
|
||||||
media_folder = options.media
|
|
||||||
|
|
||||||
if len(args) == 1:
|
|
||||||
msg_db = args[0]
|
|
||||||
elif len(args) == 2:
|
|
||||||
msg_db = args[0]
|
|
||||||
output_folder = args[1]
|
|
||||||
|
|
||||||
data = {}
|
|
||||||
|
|
||||||
if os.path.isfile(contact_db):
|
|
||||||
with sqlite3.connect(contact_db) as db:
|
|
||||||
contacts(db, data)
|
|
||||||
if os.path.isfile(msg_db):
|
|
||||||
with sqlite3.connect(msg_db) as db:
|
|
||||||
messages(db, data)
|
|
||||||
media(db, data, media_folder)
|
|
||||||
vcard(db, data)
|
|
||||||
create_html(data, output_folder)
|
|
||||||
|
|
||||||
if not os.path.isdir(f"{output_folder}/WhatsApp"):
|
|
||||||
shutil.move(media_folder, f"{output_folder}/")
|
|
||||||
|
|
||||||
with open("result.json", "w") as f:
|
|
||||||
data = json.dumps(data)
|
|
||||||
print(f"\nWriting JSON file...({int(len(data)/1024/1024)}MB)")
|
|
||||||
f.write(data)
|
|
||||||
|
|
||||||
print("Everything is done!")
|
|
||||||
|
|||||||
@@ -416,57 +416,3 @@ def create_html(
|
|||||||
print(f"Generating chats...({current}/{total_row_number})", end="\r")
|
print(f"Generating chats...({current}/{total_row_number})", end="\r")
|
||||||
|
|
||||||
print(f"Generating chats...({total_row_number}/{total_row_number})", end="\r")
|
print(f"Generating chats...({total_row_number}/{total_row_number})", end="\r")
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
|
||||||
from optparse import OptionParser
|
|
||||||
parser = OptionParser()
|
|
||||||
parser.add_option(
|
|
||||||
"-w",
|
|
||||||
"--wa",
|
|
||||||
dest="wa",
|
|
||||||
default="wa.db",
|
|
||||||
help="Path to contact database")
|
|
||||||
parser.add_option(
|
|
||||||
"-m",
|
|
||||||
"--media",
|
|
||||||
dest="media",
|
|
||||||
default="Message",
|
|
||||||
help="Path to WhatsApp media folder"
|
|
||||||
)
|
|
||||||
# parser.add_option(
|
|
||||||
# "-t",
|
|
||||||
# "--template",
|
|
||||||
# dest="html",
|
|
||||||
# default="wa.db",
|
|
||||||
# help="Path to HTML template")
|
|
||||||
(options, args) = parser.parse_args()
|
|
||||||
msg_db = "7c7fba66680ef796b916b067077cc246adacf01d"
|
|
||||||
output_folder = "temp"
|
|
||||||
contact_db = options.wa
|
|
||||||
media_folder = options.media
|
|
||||||
|
|
||||||
if len(args) == 1:
|
|
||||||
msg_db = args[0]
|
|
||||||
elif len(args) == 2:
|
|
||||||
msg_db = args[0]
|
|
||||||
output_folder = args[1]
|
|
||||||
|
|
||||||
data = {}
|
|
||||||
|
|
||||||
if os.path.isfile(msg_db):
|
|
||||||
with sqlite3.connect(msg_db) as db:
|
|
||||||
messages(db, data)
|
|
||||||
media(db, data, media_folder)
|
|
||||||
vcard(db, data)
|
|
||||||
create_html(data, output_folder)
|
|
||||||
|
|
||||||
if not os.path.isdir(f"{output_folder}/WhatsApp"):
|
|
||||||
shutil.move(media_folder, f"{output_folder}/")
|
|
||||||
|
|
||||||
with open("result.json", "w") as f:
|
|
||||||
data = json.dumps(data)
|
|
||||||
print(f"\nWriting JSON file...({int(len(data)/1024/1024)}MB)")
|
|
||||||
f.write(data)
|
|
||||||
|
|
||||||
print("Everything is done!")
|
|
||||||
|
|||||||
@@ -123,11 +123,3 @@ def extract_media(base_dir):
|
|||||||
print(f"Extracting WhatsApp files...({row['_index']}/{total_row_number})", end="\r")
|
print(f"Extracting WhatsApp files...({row['_index']}/{total_row_number})", end="\r")
|
||||||
row = c.fetchone()
|
row = c.fetchone()
|
||||||
print(f"Extracting WhatsApp files...({total_row_number}/{total_row_number})", end="\n")
|
print(f"Extracting WhatsApp files...({total_row_number}/{total_row_number})", end="\n")
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
|
||||||
from optparse import OptionParser
|
|
||||||
parser = OptionParser()
|
|
||||||
(_, args) = parser.parse_args()
|
|
||||||
base_dir = args[0]
|
|
||||||
extract_media(base_dir)
|
|
||||||
|
|||||||
Reference in New Issue
Block a user