こんにちは、Habrasociety!
私は長い間、GMailからジャバーストーリーを引き出したいと思っていました(原則として、それは非常に便利ですが、追加の障壁なしで使用したいです)
トピックが目を引いたとき、
GTalkからコンピューターに
メッセージ履歴をダウンロードすることは嬉しかったが、抽出するために行われたかさばりと努力を見て、このゲームはろうそくに値しないと判断した。
したがって、私は別の方法で行くことに決め、Google Gears \ GMail Offlineを見つけました。
準備する
Gearsを最初に
配置する必要がある
GMailにログインし、チャットにアクセスして、必要なチャットセッションをショートカット(たとえば、
export )でマークします。
次に、
Gmail Offline Settingsに移動し、(
このコンピューターで
オフラインGmailを
有効にする)を選択
して、ショートカットの設定を変更するリンクをクリックし、
エクスポートラベルの反対側を
すべて配置し
ます (残りはすべてダウンロードしないように[
いいえ]に設定できます)。
次に
、変更を
保存し、 Gearsが必要なチェーンをローカルホストと同期するまで待機し
ます 。
ベース
Firefoxディレクトリを歩いてみると、Google Gearsリポジトリが見つかりました。
一番下の行は、手紙とチャットがファイルにあるということです
%username% @
%servername% -GoogleMail @
%servername% #database
ここで、
%servername% -通常はgmail.comですが、ドメインのGoogleサービスの場合は、それぞれドメインになります。
注:ファイルは呼び出すことができ、...#データベース[1]および[2]または[番号]をまったく使用しないため、1つのファイルにチャットがない場合は、すべてを試す必要があります(名前に
-bが付いているものを除く) 、
-t 、
-u 、これは何らかのサービス情報であり、私たちはそれに興味はありません)
データベースファイル自体は
%GearsDatabaseDir% /mail.google.com/http_80にあります
SSLを使用する場合は_80を_443にすることもでき、プラットフォームの
%GearsDatabaseDir%は
ここにあります判明したように、データベースはSQLite形式です。 さらに簡単です。
オフサイトからダウンロードされたsqlite3は、GMail Offlineのコアに到達するのに役立ちます。
引き出す
まず、必要なショートカットのメッセージがあるかどうかを確認します。
sqlite3 -line "user@gmail.com-GoogleMail@gmail.com#database" "SELECT l.`Label` as `label`,COUNT(*) as messages FROM `Labels` l, Messages m, MessageLabels ml WHERE ml.`LabelId`=l.`LabelId` AND m.`rowid`=ml.`MessageId` AND l.`Label`='export'"
取得するもの:
label = export
messages = 662
そのため、メッセージがあり、エクスポートを開始できます。
将来のHTMLチャットファイルのヘッダー(<html> <body>)とフッター(</ body> </ html>)を作成し、実行します。
sqlite3 -list -separator '\n\n' "user@gmail.com-GoogleMail@gmail.com#database" "SELECT '<h3>'|| datetime(m.`datems`/1000,'unixepoch','+3 hours') || '</h3>' || c.`c1Body` || '<br /><br />' FROM MessagesFT_content c, Messages m, MessageLabels ml, Labels l WHERE ml.`LabelId`=l.`labelId` AND c.`rowid`=ml.`MessageId` AND m.`MessageId`=c.`rowid` AND l.`Label`='export' ORDER BY m.`datems` ASC" > body.html
(+3時間はタイムゾーンに置き換えられます)
そして今では、ファイルを1つに「マージ」するだけです。
Windowsの場合:
copy /B header.tpl + body.html + footer.tpl history_export.html
(/ Bを配置しない場合、winxpの下には、最後に何らかのダム文字が残ります。何らかの理由でコピーします)
バッシュ:
cat header.tpl >> history_export.html
cat body.html>> history_export.html
cat footer.tpl >> history_export.html
それは簡単で、それだけです。 html2textを使用することもできます。これは、設計の量(CSSは使用されていません!)が与えられているため、少なくとも合理的です。
_________
Dreadatourをご
招待いただきありがとうございます