From aff6f2870d2b93cea06e2a5564343f9d90a72003 Mon Sep 17 00:00:00 2001 From: shibao Date: Fri, 6 Mar 2026 01:54:22 +0000 Subject: [PATCH] add more user data --- misskey_export.py | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/misskey_export.py b/misskey_export.py index a596279..76741be 100644 --- a/misskey_export.py +++ b/misskey_export.py @@ -159,6 +159,25 @@ def export_drive_admin(user_id, base_path): until_id = files[-1]["id"] print(f" Exported {count} files.") +def export_user_data(user, base_path): + """Exports user profile data to user-data.txt.""" + print(f" Exporting profile data for {user['username']}...") + with open(base_path / "user-data.txt", "w", encoding="utf-8") as f: + f.write(f"Username: {user.get('username')}\n") + f.write(f"Display Name: {user.get('name')}\n") + f.write(f"Created At: {user.get('createdAt')}\n") + f.write(f"Description:\n{user.get('description') or ''}\n\n") + + f.write("Fields:\n") + fields = user.get("fields", []) + if fields: + for field in fields: + name = field.get("name", "") + value = field.get("value", "") + f.write(f"- {name}: {value}\n") + else: + f.write("(None)\n") + def main(): try: users = fetch_all_local_users() @@ -176,9 +195,9 @@ def main(): if not user_dir.exists(): user_dir.mkdir(parents=True) + export_user_data(user, user_dir) export_notes(user_id, user_dir) - export_drive_admin(user_id, user_dir) - # Admin cannot easily fetch other users' lists/antennas + export_drive_admin(user_id, user_dir) # Admin cannot easily fetch other users' lists/antennas # as there are no admin/lists or admin/antennas endpoints visible. print("Bulk export complete!")