iphone-sms-backup – iPhoneのSMSをバックアップ!
iPhoneは何となくセキュアな気がしていました。しかしiTunesでiPhoneを繋いでデータがバックアップできるということはデータを抜き取る手段があると言うことです。それでも何となく暗号化くらいはされていると思っていました。 しかしそんなことはないと思い知らされるソフトウェアがiphone-sms-backupです。どきっとさせられるような結果に驚いてしまうはずです。
iPhoneを繋いだらコマンドを打ちます。
$ python sms-backup.py
その実行結果が次のようになります。
Date | From | To | Text
2012-06-28 17:01:20 | Me | 9999999999 | ※※※※※※※※
2012-06-29 08:29:03 | 9999999999 | Me | ××××××××
2012-06-29 08:29:42 | Me | 9999999999 | ▼▼▼▼▼▼▼▼
2012-06-29 08:30:17 | 9999999999 | Me | ○○○○○○○○
こんな感じでSMSのやり取りがそのまま一覧になって表示されるのです。
コマンドヘルプは以下のようになります。指定した人とのやり取りだけを取り出すこともできます。
$ python sms-backup.py --help
usage: sms-backup.py [-h] [-q | -v] [-a ADDRESS=NAME] [-d FORMAT]
[-f {human,csv,json}] [-m NAME] [-o FILE] [-e EMAIL]
[-p PHONE] [--no-header] [-i FILE]
optional arguments:
-h, --help show this help message and exit
-q, --quiet Decrease running commentary.
-v, --verbose Increase running commentary.
Format Options:
-a ADDRESS=NAME, --alias ADDRESS=NAME
Key-value pair (.ini style) that maps an address
(phone number or email) to a name. Name replaces
address in output. Can be used multiple times.
Optional. If not present, address is used in output.
-d FORMAT, --date-format FORMAT
Date format string. Optional. Default: '%Y-%m-%d
%H:%M:%S'.
-f {human,csv,json}, --format {human,csv,json}
How output is formatted. Valid options: 'human'
(fields separated by pipe), 'csv', or 'json'.
Optional. Default: 'human'.
-m NAME, --myname NAME
Name of iPhone owner in output. Optional. Default
name: 'Me'.
Output Options:
-o FILE, --output FILE
Name of output file. Optional. Default (if not
present): Output to STDOUT.
-e EMAIL, --email EMAIL
Limit output to iMessage messages to/from this email
address. Can be used multiple times. Optional. Default
(if not present): All iMessages included.
-p PHONE, --phone PHONE
Limit output to sms messages to/from this phone
number. Can be used multiple times. Optional. Default
(if not present): All messages from all numbers
included.
--no-header Don't print header row for 'human' or 'csv' formats.
Optional. Default (if not present): Print header row.
Input Options:
-i FILE, --input FILE
Name of SMS db file. Optional. Default: Script will
find and use db in standard backup location.
確かにできないことではないですが、それがコマンド一つだけで完了してしまう容易さに驚きです。メインはバックアップ目的とあるので、標準出力よりもJSONやCSVによる出力が良いと思います。 メッセージアプリの中身が多くて整理ができないといった時にも一旦バックアップしてしまえば消去しても安心ですし、テキストであれば検索も容易になります。意外と使い道はあるのではないでしょうか。 iphone-sms-backupはPython製、MIT Licenseのオープンソース・ソフトウェアです。 toffer/iphone-sms-backup @ GitHub toffer/iphone-sms-backup