突出显示 Dataframe 中的行并发送带有条件的自动电子邮件

分享于2022年07月17日 automation mysql pandas python teradata 问答
【问题标题】:突出显示 Dataframe 中的行并发送带有条件的自动电子邮件(Highlight row in Dataframe and send automate email with condition)
【发布时间】:2022-06-11 06:00:05
【问题描述】:

此作业我需要 2 个请求:

  1. 只有当有新的购买可用时,我才需要向队友发送自动电子邮件

  2. 我想突出显示代表新购买的行(黄色),以便我的队友可以立即轻松地看到它们。

我将 teradata_simba 内核用于 mysql 表。我的购买表包含 3 列: Buyer_id - 购买产品的买家 ID, transaction_id - 与购买关联的 txn id, Purchase_date - 购买日期的时间戳

Highlight row in Dataframe and send automate email with condition

每当有新购买时,我都需要使用电子邮件通知我的队友。我用来发送自动电子邮件的 Python 代码是:

Data = %teradata_simba select * from Purchase order by Purchase_date desc

df = Data.DataFrame()

df.to_excel('Purchase_activity.xlsx', index=False)

%sendmail -to "jasonchen@yahoo.com" -res 数据

每天都会自动发送电子邮件。但是,并非每天都会有新的购买。我只想在有新购买时发送电子邮件。对于表格示例,我只希望 python 在 5/1、5/12 和 5/27 发送电子邮件。我想我可以添加一个逻辑来比较前几天和今天,但我不确定如何。请帮忙。

另外,我想突出显示代表新购买的行(黄色),以便我的队友可以立即看到。

  • 请提供足够的代码,以便其他人更好地理解或重现问题。

【解决方案1】:

如果是每日提要,您只能发送上一个日期的记录

select * from Purchase Where Purchase_date= Current_Date()-1