我最喜欢的Gmail功能之一就是可以将网址添加到某些邮件,例如:
https://mail.google.com/mail/#all/124c8f386d41fd3a
我想做的是编写一个脚本,通过IMAP访问我的Gmail帐户,并创建一个HTML页面,其中包含上述链接,我感兴趣的每条消息.
但是,似乎无法从IMAP信封或UUID属性中找到"124c8f386d41fd3a"ID.我发现的所有message-id和uuids都有不同的格式,不能用于生成有关我收件箱的有效链接.
有人知道如何在IMAP中找到这些url-ID吗?
- FelixGeisendörfer又名the_undefined
PS:我使用的是Ruby,之前的尝试包括:
imap.fetch(message_id, "UID")
imap.fetch(message_id, "ENVELOPE")
imap.fetch(message_id, ...)
Run Code Online (Sandbox Code Playgroud)
我在ruby imap docs中尝试了为FetchData列出的所有属性
Stack Overflow如何允许新用户使用他们的Gmail或Facebook或Yahoo帐户登录Stack Overflow?我正在开发一个小项目网站,我很好奇Stack Overflow是如何做到这一点的.我需要获得这些公司的许可吗?或者我可以这样做吗?
我正在尝试阅读Gmail中的电子邮件.我已经尝试了我能找到的每个API /开源项目,并且不能让它们中的任何一个工作.
有没有人有一个工作代码示例,可以让我从Gmail帐户验证和下载电子邮件?
最终工作版本发布如下:https://stackoverflow.com/a/19570553/550198
我有一个火灾意图发送电子邮件的代码
Intent i = new Intent(Intent.ACTION_SEND);
i.setType("text/plain");
i.putExtra(Intent.EXTRA_EMAIL,
new String[] { to });
i.putExtra(Intent.EXTRA_SUBJECT, subject);
i.putExtra(Intent.EXTRA_TEXT, msg);
try {
startActivity(Intent.createChooser(i, "Send mail..."));
} catch (android.content.ActivityNotFoundException ex) {
Toast.makeText(Start.this,
"There are no email clients installed.",
Toast.LENGTH_SHORT).show();
}
Run Code Online (Sandbox Code Playgroud)
但是当这个意图被解雇时,我在列表中看到很多项目,如sms app,gmail app,facebook app等等.
如何过滤此功能并仅启用gmail应用(或者只是电子邮件应用)?
这是我的脚本:
#!/usr/bin/python
import smtplib
msg = 'Hello world.'
server = smtplib.SMTP('smtp.gmail.com',587) #port 465 or 587
server.ehlo()
server.starttls()
server.ehlo()
server.login('myname@gmail.com','mypass')
server.sendmail('myname@gmail.com','somename@somewhere.com',msg)
server.close()
Run Code Online (Sandbox Code Playgroud)
我只是想从我的Gmail帐户发送电子邮件.由于gmail的要求,该脚本使用starttls.我在两个web主机上尝试了这个,1and1和webfaction.1and1给我一个'连接被拒绝'错误,webfaction报告没有错误,但只是不发送电子邮件.我看不出脚本有什么问题,所以我认为它可能与网络主机有关.任何想法和意见将不胜感激.
编辑:我打开了调试模式.从输出,它看起来像是成功发送了消息...我只是从来没有收到它.
send: 'ehlo web65.webfaction.com\r\n'
reply: '250-mx.google.com at your service, [174.133.21.84]\r\n'
reply: '250-SIZE 35651584\r\n'
reply: '250-8BITMIME\r\n'
reply: '250-STARTTLS\r\n'
reply: '250-ENHANCEDSTATUSCODES\r\n'
reply: '250 PIPELINING\r\n'
reply: retcode (250); Msg: mx.google.com at your service, [174.133.21.84]
SIZE 35651584
8BITMIME
STARTTLS
ENHANCEDSTATUSCODES
PIPELINING
send: 'STARTTLS\r\n'
reply: '220 2.0.0 Ready to start TLS\r\n'
reply: retcode (220); Msg: 2.0.0 Ready to start TLS
send: 'ehlo web65.webfaction.com\r\n' …
Run Code Online (Sandbox Code Playgroud) 我希望能够使用Python将GMail中的电子邮件从收件箱移动到另一个文件夹.我使用imaplib,无法弄清楚如何做到这一点.
我使用以下代码使用Gmail帐户从我的Web应用程序发送邮件.我的问题是,我可以将发件人地址更改为原始发件人(gmail)地址以外的其他地址吗?我的代码如下:
System.Net.Mail.MailMessage mail = new System.Net.Mail.MailMessage();
System.Net.NetworkCredential cred = new System.Net.NetworkCredential("sample@gmail.com", "*******");
Run Code Online (Sandbox Code Playgroud)
无论我做什么都没用,因为我总是收到邮件sample@gmail.com
.是否有可能改变它?
我已经改为
mail.From = new System.Net.Mail.MailAddress("sample@yahoo.com");
但是我收到了来自发件人地址的邮件,sample@gmail.com
而不是来自新的"发件人"地址.我认为gmail smtp用原始凭证覆盖起始地址.
如果你像我一样,在阅读本书结束时,你的眼睛会抽搐.我不怪你.
我们的客户要求我们开发响应式HTML电子邮件模板,其中包含两个规范:
这个问题具体是关于执行圆角.Gmail和Apple支持CSS圆角,Outlook需要矢量图形.对于其余平台,他们可以使用方形边缘.
以下是我们如何检测和执行outlook:
<!--[if mso]><v:shape>...</v:shape><![endif]-->
Run Code Online (Sandbox Code Playgroud)
像魅力一样工作,甚至回到Outlook 2000.问题是,我无法弄清楚如何创建一个后备.直觉说:
<!--[if !mso]>...<![endif]-->
Run Code Online (Sandbox Code Playgroud)
但它只是被大多数其他电子邮件客户端的评论完全忽略,然后完全没有从框中丢失角落.我问你,SO社区的优秀成员:是否可以为除 MSO 之外的所有平台部署标记?也许有一种更聪明的方法可以实现这一点,我没有考虑过?或者,电子邮件HTML仍然太过年轻,无法尝试这样的事情?
我创建了一个Google Apps脚本,用于检查电子邮件是否包含附件,然后将其发送到另一个电子邮件地址.
它工作正常,但我想创建一个触发器,一旦新电子邮件到达收件箱就会启动脚本.
我已经能够创建一个每小时启动脚本的触发器,但这不是我想要的
使用gmail和python发送电子邮件的推荐方法是什么?
有很多SO线程,但大多数都是旧的,并且用户名和密码的smtp不再工作或用户必须降级他们的Gmail的安全性(例如见这里).
OAuth是推荐的方式吗?