1

最近imapclient、Yahoo! からメールを取得するために使い始めました。アカウント。プログラムは比較的単純です。それは次のとおりです。

yahoo=imap.IMAPClient('imap.mail.yahoo.com', ssl=True)
yahoo.login('myusername', 'mypassword')# cant tell you my username and password, can I?
yahoo.select_folder('Inbox', readonly=True)
# so far, everything is going fine.
yahoo.search(['ON 1-Nov-2015'])

これが問題です。11 月 1 日にすでに大量のメッセージを受信して​​おり、メソッドは を返します[]。私が試したどの日付でも機能しません。まるで'ON'検索がまったく機能していないかのようです。そこで、別の方法を試します。

yahoo.search(['SINCE 1-Nov-2015'])

プログラムを何度再起動しても、返される電子メール UID の数は実際より少なくなります。だから私は調査しました、そしてこれが問題かもしれないと思います:

yahoo.fetch(11636, 'BODY[]')

11636 は、11 月 1 日の午前 10 時 20 分というタイムスタンプを持つメールでした。代わりに、戻り値は、11 月 1 日の午前 2 時 20 分に受信したことを示しています。これが問題だと思います。

たぶん私は間違っています、そしてそれが問題です。たぶん私は何かひどく間違ったことをしています。いずれにせよ、どんな助けや提案も大歓迎です。

4

2 に答える 2

2

datetime を使用して機能させました

import datetime
yahoo.search([u'SINCE', datetime.date(2015, 11, 1)])

ちょっと遅い答え、ごめんなさい:/

于 2020-01-26T16:34:05.857 に答える