らしい
ASCII 以外の文字列で GMAIL SEARCH を作成する方法
Google Groups からのコメントですが、Python と で作成する方法を把握できませんimaplib
:
リテラルを使用して非 ASCII データを送信します。
. search charset utf-8 x-gm-raw {30}
+ go ahead
"живалов -йцукен"
* SEARCH 586
. OK SEARCH completed (Success)
らしい
ASCII 以外の文字列で GMAIL SEARCH を作成する方法
Google Groups からのコメントですが、Python と で作成する方法を把握できませんimaplib
:
リテラルを使用して非 ASCII データを送信します。
. search charset utf-8 x-gm-raw {30}
+ go ahead
"живалов -йцукен"
* SEARCH 586
. OK SEARCH completed (Success)
これは、 utf-8でエンコードされたサブジェクトを使用したPython IMAP検索の複製であり、徹底的な調査の結果、同じ結論に達しました。メソッドがIMAPリテラル(使用される文字列)をサポートしていないimaplib
ため、現在、Pythonのモジュールではこれを実現できません。リテラルを示すために)で引用されています。同じことがメソッドにも当てはまるため、制限を回避するために使用することはできません。search
{<number>}
imaplib
uid
search
過去には、iso-8859-1でエンコードされたサブジェクトを使用したPython IMAP検索の質問に見られるように、この機能はおそらくIMAPリテラルを使用せずに実装されていたことに注意してください。
のハッキングimaplib
が明らかに必要なためsearch
、質問の生のIMAPインタラクションのように、検索文字列をリテラルとして渡すことをサポートします。可能性としては、imapclientプロジェクトのコンテキストで実装することが考えられます。これは、Python標準ライブラリに変更を加えるよりも簡単な場合があります。
IMAPClientライブラリの私のフォークは、 gm_search()
IMAP リテラルを使用して Gmail の X-GM-RAW 検索クエリを実行するメソッドを追加します。
例:
imap_client.gm_search(u'subject:"ƒoo∫ar" has:attachment', charset='utf8')
# The method encodes the unicode string internally. I'm debating with myself if that's a good idea or not.
メインプロジェクトに含める必要がある場合は、作者からのフィードバックを待っています。