【发布时间】:2019-10-04 16:59:47
【问题描述】:
我正在尝试解析来自 gmail 的最后一条未读邮件,但由于某种原因,我的代码失败了,而邮件的格式有点不同。
当我手动将消息发送到电子邮件时,此代码有效。在这种情况下,邮件如下所示: Picture
代码本身是这样的:
public static int GetMail()
{
//OTP READ FROM GMAIL
var client = new Pop3Client();
client.Connect("pop.gmail.com", 995, true);
client.Authenticate("MAIL@gmail.com", "PASSWORD");
var count = client.GetMessageCount();
Message messages = client.GetMessage(count);
MessagePart plainTextPart = messages.FindFirstPlainTextVersion();
string message = plainTextPart.GetBodyAsText();
string resultString = Regex.Match(message, @"\d+").Value;
int Mail = Int32.Parse(resultString);
client.DeleteAllMessages();
client.Disconnect();
return Mail;
}
但是当我在我的手机上安装一个应用程序(它会自动将新消息转发到您的电子邮件)时,应用程序会更改消息格式并且电子邮件消息看起来像这样:Picture 2
看起来,当电子邮件格式发生变化时,它就不再起作用了。你们能否给我建议如何修改代码,使其适用于Picture 2中给出的格式。
【问题讨论】:
-
当您说“最后”时,您的意思是“最新收到的”还是“最旧的未读”?另外,您的问题与硒有什么关系?
-
@John 我的意思是最新的未读消息。该代码与 selenium 集成,我正在该库中工作。
-
哦! Pop3Client 是 Selenium 库吗?
-
不,我的意思是我在 Selenium 库中工作,我使用该库中的代码