当前位置: 首页 > news >正文

Python自动转发exchange邮件(exchangelib)

Python自动转发exchange邮件(exchangelib)

自动转发邮件,不作为附件

#导入exchangelib库模块
from exchangelib import NTLM, IMPERSONATION, Account, Credentials, Configuration, DELEGATE, Mailbox, Folder, Message, HTMLBody, FileAttachment, ItemAttachment
from exchangelib.protocol import BaseProtocol, NoVerifyHTTPAdapter
import sys,base64,time,random
import requests, urllib3
from datetime import datetime,timedelta
#定义个人隔离区邮件密送邮箱地址、账号、密码,用于读取该邮箱邮件
usermail = "username@yx.com"
username_appimp = "domain\\username"
password_appimp = "password"
mail_server = "mail.yx.com"######### 取消SSL安全连接警告 #####################################
urllib3.disable_warnings()
# Tell exchangelib to use this adapter class instead of the default
# exchangelib provides a sample adapter which ignores TLS validation errors. 
# Use at own risk. NTML is NT LAN Manager.
BaseProtocol.HTTP_ADAPTER_CLS = NoVerifyHTTPAdapter
######### 取消SSL安全连接警告 ######################################通过EWS连接到Exchange
credentials = Credentials(username=username_appimp, password=password_appimp)
config = Configuration(server=mail_server, credentials=credentials, auth_type = NTLM, max_connections=3)
try:account = Account(primary_smtp_address=usermail, autodiscover=False,config=config,access_type=DELEGATE, #IMPERSONATION,
    )
except Exception as e:print(f'Error with connect to Exchange,Exit: {e}')exit(1)# print(account)def forward_email(original_message, forward_to_emails):"""转发邮件,原始邮件内容不作为附件Parameters:original_message: 原始邮件对象forward_to_emails: 转发目标邮箱列表"""# from_sender = original_message.sender.name if original_message.sender else '未知'# to_recipients = ','.join([recipient.name for recipient in original_message.to_recipients])# cc_recipients = ','.join([recipient.name for recipient in original_message.cc_recipients]) if original_message.cc_recipients else " "# send_time =  original_message.datetime_received.strftime('%Y-%m-%d %H:%M:%S')forward_body = original_message.body if original_message.body else original_message.text_body# # 构建转发邮件内容# forward_body = f'''# {mail_body}# '''# 创建转发邮件forward_msg = Message(account=original_message.account,folder=original_message.account.sent,subject=f"转发: {original_message.subject}",body=HTMLBody(forward_body),to_recipients=[Mailbox(email_address=email) for email in forward_to_emails])attachment_count = 0for attachment in original_message.attachments:if isinstance(attachment, FileAttachment):# if self._is_signature_attachment(attachment):#     signature_attachment_count += 1#     continue# 创建新的附件对象new_attachment = FileAttachment(name=attachment.name,content_type=attachment.content_type,content=attachment.content,content_id=attachment.content_id,  # 保留 content_id 用于 cid 引用is_inline=attachment.is_inline      # 保留是否内嵌
)forward_msg.attachments.append(new_attachment)attachment_count += 1# 发送邮件
    forward_msg.send_and_save()print(f"邮件已成功转发至: {', '.join(forward_to_emails)}")#遍历exchange的隔离区邮箱,获取5分钟前 - 最近24小时内的邮件 
end = (datetime.now() - timedelta(minutes=0)).replace(tzinfo=account.default_timezone)
start = (datetime.now() - timedelta(hours=100)).replace(tzinfo=account.default_timezone)
filter_items = account.inbox.all().filter(datetime_received__range=(start, end))
print(f'待处理邮件数量: {filter_items.count()} 封')
if filter_items.count() > 0:print(f'待处理邮件数量: {filter_items.count()} 封,开始处理')i = 1
for item in filter_items[:3]:print(item.sender.email_address)print(item.subject)forward_email(original_message=item,forward_to_emails=["48359@qq.com", "mom@163.com"])

 

http://www.jsqmd.com/news/57018/

相关文章:

  • 2025集成电路封装领域引线键合机推荐榜 国产替代与技术实力
  • 上海二类医疗器械经营备案代办机构推荐:基于合规需求的客观筛选
  • 2025 武汉高三文化课培训学校权威推荐榜单
  • 2025集成电路封装国产键合机推荐榜 耐用性与场景适配指南
  • 2025蓝领即时用工平台评测报告快马日结与竞品多维对比
  • 2025年优秀的棉被子/鹅绒被子品牌厂家排行榜
  • 【OpenHarmony】跨平台开发-Flutter 初阶学习:项目组件创建与页面创建
  • 深入解析:电力电子技术 第九章——二极管整流器
  • 迅为RK3588开发环境搭建“三步曲”,从零到一轻松上手!
  • 2025年北京天津河北上海江苏印刷正规厂家排名:不错的印刷厂
  • 2025年黑龙江净化工程品牌企业排行榜,专业净化工程公司新测
  • CodeBuddy-Rules配置
  • CF vp record
  • 2025年十大资质齐全的品牌策划专业公司排行榜,精选品牌策划
  • 口碑不错的净化工程企业TOP5权威推荐:服务与信誉双优品牌甄
  • 搞懂数字签名与证书
  • 2025年上海口碑不错的品牌策划企业排行榜,不错的品牌策划公
  • 2025靠谱的艺术留学机构TOP5权威推荐:助力艺术生梦校冲
  • 11.21~11.23
  • 2025年北京天津河北上海江苏纸制品印刷企业TOP5排行榜,
  • 2025年北京小红书代运营服务公司TOP5排名,松果获客的市
  • 2025 年 12 月丝杠轴承厂家权威推荐榜:涵盖7603/7602/BS系列,滚珠、法兰式、密封型精密传动部件深度解析与选购指南
  • WTAPI框架微信个人号二次开发:智能机器人构建指南
  • 2025年宁波网站建设权威推荐榜:网站搭建/推广/设计/定制,企业品牌营销与外贸独立站一站式解决方案
  • 2025印刷生产厂TOP5权威推荐:能印优惠券的印刷厂、经验
  • 2025年冲压模具冲头厂家排名,冲头厂家排名及冲压模具冲头厂
  • 选对不选贵!2025五大鼻敏益生菌品牌测评指南
  • 【题解】倒水
  • 2025 年能源管理系统行业五大解决方案竞争力排名
  • 2025年12月电线厂家权威推荐榜:铜芯/无氧铜/铝芯/BVR/光伏/工业/家装/消防电线,精选耐用导电先锋品牌