问题描述
我想从 Python 中的 Outlook 电子邮件正文中抓取链接。 这是我的部分代码:
def scrape_link_from_email_outlook(self,substring_filter):
pattern = '(?P<url>https?://[^\s]+)'
link_regex = re.compile(pattern)
for num_message in self.arr_of_emails[self.start_index:]:
_,individual_response_data = self.login_session.uid("fetch",num_message,'(RFC822)')
individual_body = individual_response_data[0][1].decode("utf-8")
individual_body_parsed = email.message_from_string(individual_body)
body = scrape_email(individual_body_parsed)
print(body)
def scrape_email(raw):
if raw.is_multipart():
return Mail.scrape_email(raw.get_payload(0))
else:
return raw.get_payload(None,True)
这适用于带有 gmail 的电子邮件,我能够解析字符串并从那里获取链接,但是当我将它与 Outlook 一起使用时,它返回:
b'Plain text version not available'
有什么我遗漏的吗?对于我使用的 gmail:
self.login_session.fetch(num_message,'(RFC822)')
相对于 self.login_session.uid("fetch",'(RFC822)')
但我认为这不会有什么不同,因为我仍然能够收到电子邮件。 谢谢 - 弗格斯。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)