Skip to main content

带有 pythonic API 的非官方 Gmail python 客户端。

项目描述

gmaily

带有 pythonic API 的非官方 Gmail python 客户端。

特征

  • 清洁 API
  • 除了标准库,没有其他依赖项
  • 内容延迟加载

例子

import sys
import getpass
import datetime

from gmaily import Gmaily

g = Gmaily()

user_email = input("Email: ")
user_pw = getpass.getpass()

if not g.login(user_email, user_pw):
    print("Cannot login")
    sys.exit(1)

msgs = g.inbox().after(datetime.date.today() - datetime.timedelta(weeks=2))
for msg in msgs.all():
    print("\n" + (" Mail UID: %d " % msg.uid).center(80, "=") + "\n")
    print("Subject:", msg.subject)
    print("From:", msg.sender)
    print("Date:", msg.date)
    print("Attachments:", msg.attachments)

    print("-" * 10)
    print(msg.text)

g.logout()

用法

搜索邮箱

SearchQuery,它由一些方法返回,例如Gmaily.inbox 支持方法链接,您可以轻松地将搜索条件混合在一起:

two_weeks_ago = datetime.date.today() - datetime.timedelta(weeks=2)
msgs = g.inbox().by("john@example.com").before(two_weeks_ago)

INBOX或者,您可以使用上述示例以外的其他邮箱,使用Gmaily.mailbox方法:

msgs = g.mailbox("URGENT").on(datetime.date.today())

然后,您可以使用以下命令执行查询并获取结果SearchQuery.all

print(msgs.all())

您可以在此处找到支持的标准及其描述的完整列表 。请注意,ALL条件不存在,因为它是默认条件,SearchQuery.all代表执行查询。.fetch()像,之类的任何其他名称.do()都可以代替,但我选择了 ,.all()因为著名的 ORM 也使用它。

其他一些标准也被省略:

  • NOT
  • OR
  • UID

安装

它需要Python>=3.5.

$ pip3 install -U gmaily

执照

麻省理工学院

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

gmaily-0.0.3.tar.gz (3.8 kB 查看哈希

已上传 source

内置分布

gmaily-0.0.3-py3-none-any.whl (4.0 kB 查看哈希

已上传 py3