【问题标题】:how to Detect Marketing and Role based emails programmatically?如何以编程方式检测营销和基于角色的电子邮件?
【发布时间】:2021-05-30 21:07:10
【问题描述】:

我有一些要求,我必须区分电子邮件是普通电子邮件、营销电子邮件还是基于角色的电子邮件。

营销电子邮件:与营销活动相对应的电子邮件。通常发送给一批用户并使用诸如 MailChimp 等...

基于角色的电子邮件:电子邮件地址与特定人员无关,而是与公司、部门、职位或 收件人组(例如:noreply@、marketing@、support@ 等)。

我可以通过电子邮件标题信息来识别它吗?或者还有其他方法可以实现吗?

使用的技术:

  • Gmail API:获取电子邮件信息
  • Spring Boot:处理电子邮件

【问题讨论】:

    标签: spring-boot email gmail gmail-api


    【解决方案1】:

    通过使用 Gmail API,您可以使用以下请求检索电子邮件:

    GET https://gmail.googleapis.com/gmail/v1/users/{userId}/messages/{id}
    

    最终将返回具有以下类似结构的Message 的主体:

    {
        "id": ID,
        "threadId": THREAD_ID,
        "labelIds": [
            "CATEGORY_PROMOTIONS",
            "UNREAD",
            "INBOX"
        ],
        "payload": {
            "headers": [{
                    "name": "Reply-To",
                    "value": "NAME \u003cnewsletter@email.com\u003e"
                },
                {
                    "name": "Subject",
                    "value": "Week 9 Newsletter"
                },
                {
                    "name": "From",
                    "value": "NAME \u003csupport@email.com\u003e"
                },
                "body": {
                    "size": SIZE,
                    "data": ""
                }
            },
        }
    

    因此,根据您以后要如何处理这些,您可以使用返回的电子邮件中的以下一些字段:

    • labelIds - 此字段将包含附加到传入电子邮件的所有标签,这意味着(取决于您对收件箱的设置)您可以轻松地检查此电子邮件,例如,因为 @ 是促销电子邮件987654326@贴在上面的标签;

    • Reply-To 标头 - 您可以在此处检索电子邮件地址并稍后对其进行分析;

    • Subject 标头 - 假设您设置了关键字列表,您可以搜索电子邮件的主题,然后根据结果进行标记;

    • From 标头 - 您可以在这里一次又一次地检索此电子邮件地址,根据关键字列表,您可以确定此电子邮件的类型。

    参考

    【讨论】:

    • 这是我已经在做的,但我的问题是如何从邮件标题信息中过滤营销电子邮件、基于角色的电子邮件和其他电子邮件。
    猜你喜欢
    • 2019-01-06
    • 2023-01-09
    • 2015-08-09
    • 1970-01-01
    • 2021-07-28
    • 2014-06-25
    • 2010-11-22
    • 1970-01-01
    • 2017-01-17
    相关资源
    最近更新 更多