Xuất khẩu iMessages ở dạng người có thể đọc được để lưu trữ


32

Tôi có một cuộc trò chuyện iMessage dài (vài tháng) với một người liên hệ. Anh ta đã mất những tin nhắn này khi cài đặt lại HĐH, nhưng tôi vẫn có kho lưu trữ. Có một số thông tin quan trọng mà chúng tôi muốn lưu giữ.

Có cách nào đơn giản để xuất đoạn hội thoại này để lưu trữ ở dạng người có thể đọc được và cũng giữ bất kỳ hình ảnh nào không?

Tôi có thể chọn các phần của cuộc hội thoại, sao chép nó vào bảng tạm và dán nó vào một tài liệu văn bản phong phú, nhưng điều này sẽ loại bỏ tất cả các hình ảnh. Tôi đang tìm kiếm một cách giữ hình ảnh.

Lưu ý: Tôi chỉ sử dụng iMessage trên OS X, không phải iOS.

(Lý tưởng nhất là tôi cũng muốn xuất tất cả các tệp đính kèm không phải hình ảnh, nhưng tôi không hy vọng rằng điều này sẽ có thể.)


1
Bạn có muốn lưu chúng từ iDevice hoặc Mac không?
Matthieu Riegler

@MatthieuRiegler Một máy Mac. Tôi không sử dụng iMessage trên iOS, vì vậy tôi đã không nghĩ đến khả năng đó. Tôi sẽ cập nhật câu hỏi.
Szabolcs

1
Có phải apple.stackexchange.com/questions/88023/ giúp đỡ hay bạn đang tìm kiếm thứ gì khác?
nohillside

@patrix Tôi đang tìm cách để loại bỏ các tin nhắn khỏi iMessage, vì vậy tôi có thể xem chúng ngay cả khi tôi ngừng sử dụng OS X. Tôi nhận ra rằng thật sai lầm khi trả lời trên iMessage để giữ thông tin quan trọng, vì vậy tôi muốn di chuyển tránh xa nó hoàn toàn, và hy vọng cứu vãn chatlog cho tương lai.
Szabolcs

Câu trả lời:


19

Nếu bạn biết tài khoản iMessage của liên hệ của bạn ở đây là tập lệnh bash của tôi để lấy văn bản + hình ảnh.

#Parameter is a iMessage account (email or phone number i.e. +33616.... )
if [ $# -lt 1 ]; then
    echo "Enter a iMessage account (email of phone number i.e +33616.....) "
fi
login=$1

#Retrieve the text messages 

sqlite3 ~/Library/Messages/chat.db "
select is_from_me,text from message where handle_id=(
select handle_id from chat_handle_join where chat_id=(
select ROWID from chat where guid='iMessage;-;$1')
)" | sed 's/1\|/me: /g;s/0\|/budy: /g' > MessageBackup.txt


#Retrieve the attached stored in the local cache

sqlite3 ~/Library/Messages/chat.db "
select filename from attachment where rowid in (
select attachment_id from message_attachment_join where message_id in (
select rowid from message where cache_has_attachments=1 and handle_id=(
select handle_id from chat_handle_join where chat_id=(
select ROWID from chat where guid='iMessage;-;$1')
)))" | cut -c 2- | awk -v home=$HOME '{print home $0}' | tr '\n' '\0' | xargs -0 -t -I fname cp fname .

Cảm ơn, điều này rất hữu ích. Điều này sẽ không cung cấp cho tôi những hình ảnh mặc dù ...
Szabolcs

Tôi sẽ đào thêm một chút để tìm thấy chúng;)
Matthieu Riegler

Cảm ơn! Tôi vừa tìm thấy một giải pháp đủ tốt cho bây giờ, vì vậy xin vui lòng không dành thời gian của bạn cho việc này nữa.
Szabolcs

xin chào, làm thế nào để chạy tập lệnh này
Atmiya_Dharmesh


12

Tôi đã tự do tiếp tục câu trả lời trên của Matthieu. Tôi đã viết một tập lệnh sẽ tự động hóa quy trình bằng cách sao lưu tất cả các tin nhắn của người dùng, bao gồm hình ảnh, tệp âm thanh và phim - lưu trữ mỗi cuộc hội thoại vào một tệp văn bản bằng số điện thoại.

https: //github.com/PeterK Vitaminki09 / thùng

Chỉnh sửa: Tôi đã phát triển tập lệnh thành ứng dụng OS X với một số tính năng hay như nhận dạng liên hệ. https: //peterk vitaminki09.github.io/baskup


Nếu số liên lạc không có số điện thoại thì sao?
Szabolcs

2
Tôi lấy tất cả thông tin liên hệ từ bảng trò chuyện trong ./L Library / Factages / christ.db. Điều này không cụ thể về số điện thoại người dùng. Chỉ cần id của họ được liên kết với tin nhắn của họ. Trong hầu hết các trường hợp, đây thực tế là một số điện thoại.
Peter Kaminski

Tôi đã sử dụng nó. Nó đã làm việc. Đó là giải pháp duy nhất tôi thấy rằng không tốn tiền. Cảm ơn bạn!
Erik Allen

Tôi đã sử dụng nó. Nó đã làm việc. Rất độc đáo tôi nên thêm. +1 'vì đó là tất cả những gì tôi có thể đưa ra cho một câu trả lời.
Seamus

11

Tôi tìm thấy một giải pháp khả thi:

  1. Cuộn lên cho đến khi tất cả các tin nhắn được tải
  2. In ra PDF
  3. (Nếu bạn có Acrobat,) cắt bỏ lề từ các trang để cải thiện khả năng đọc các tin nhắn chia trang.

Kết quả trông không tuyệt lắm , nhưng nó chứa tất cả các hình ảnh và văn bản có thể tìm kiếm được. Vậy là đủ tốt rồi.


4
Điều gì nếu bạn có 25.000 tin nhắn trong cuộc trò chuyện và cuộn lên không khả thi?
Người dùng

Phải mất một ít thời gian, nhưng tôi nghĩ giải pháp này tốt cho nhiều trường hợp sử dụng.
Citadelgrad

6

Lưu trữ

Người này dường như có một giải pháp bóng bẩy hơn (không có sự thiếu tôn trọng đối với trình cào SQLite cực kỳ hữu ích ở trên):

http://www.chrisfinke.com/2013/11/05/convert-ichat-transcripts-to-usitable-xml/

Để tóm tắt blog:

  • cài đặt Adium
  • chọn tùy chọn "nhập từ iChat"
  • Bảng điểm Adium được tạo từ nhật ký của bạn và được lưu trữ trong:

    ~ / Thư viện / Hỗ trợ ứng dụng / Adium 2.0 / Người dùng / Mặc định / Nhật ký /

Các tệp được chuyển đổi bằng HTML, dễ đọc hơn và hy vọng dễ lưu trữ hơn, nhưng sqlitecách tiếp cận liên kết đính kèm có vẻ hợp lý.

Tài liệu đính kèm

Lưu ý rằng tệp đính kèm iMessage có xu hướng sống trong:

~/Library/Containers/com.apple.iChat/Data/Library/Messages/Attachments/...

(Tôi không biết các quy tắc cho những gì đi vào đó và những gì không, vì vậy nó có thể không hoàn chỉnh - nhưng có một số tiền khá lớn ở đó)

Nhưng thực tế bạn có thể thấy một số thông tin về liên hệ và cuộc trò chuyện trong các thuộc tính mở rộng của tệp:

$ xattr -lp com.apple.metadata:kMDItemWhereFroms <attachment>

sẽ in một nguồn gốc nếu Tin nhắn đưa nó vào đó khi tải xuống.


1
Vâng, @Szabolcs, tôi đã thấy nhận xét "vui lòng không dành thời gian cho việc này nữa", nhưng phải tự mình đào bới một chút để nghĩ rằng tôi nên chia sẻ trong trường hợp nó hữu ích với người khác.
Gra

0

Mac của bạn sẽ tự động lưu chúng. Dưới đây là hướng dẫn về cách giải nén chúng:

http: // www. Morph.com/how-view-and-move-your-imessage-history-and-attachments


1
Chào mừng bạn đến hỏi khác nhau! Xin đừng đưa ra câu trả lời chỉ liên kết. Chúng tôi đang tìm kiếm câu trả lời cung cấp giải thích tại sao nó trả lời câu hỏi. Liên kết có thể thay đổi theo thời gian và sau đó chúng ta sẽ mất bối cảnh câu hỏi. Xem Cách trả lời để biết thông tin về những gì tạo nên một câu trả lời hay. - Từ đánh giá -
fsb

-1

Xuất ứng dụng iMessages cho phép bạn lưu, in, sao lưu và khôi phục SMS / iMessages cho máy Mac / PC của bạn.


1
Điều này không thực sự trả lời câu hỏi một cách rõ ràng như tôi nói rằng tôi sử dụng iMessage chỉ trên OS X, không phải trên iOS.
Szabolcs
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.