如何从Gmail中获取发件人的姓名?

时间:2012-02-11 19:42:25

标签: javascript gmail

我正在使用javascript为gmail开发一个firefox插件。应用程序将让用户在一些预设的响应(用户将选择的预定义电子邮件,响应之前的电子邮件时)之间进行选择。我需要自动填写发件人的邮件,这样用户每次都不需要输入邮件。

示例:

如果用户从“示例名称example@domain.com”收到邮件,则在回复邮件时,正文应该说出与以下内容类似的内容:

亲爱的示例名称

谢谢你的选择.... .. .. .. 此致,第二个例子

如何让“示例名称”(第一个)自动显示在正文中。

由于

1 个答案:

答案 0 :(得分:0)

我们了解您希望从Gmail网页抓取数据。

查看Gmail收件箱的html,似乎它们通过最小化程序运行大多数变量,这会让我对引用id或类名称持谨慎态度。也许他们明天会做一个小改动,而且最小化者会为所有事情选择新名称。

从好的方面来看,一些属性似乎很稳定。例如:

中的role ='presentation'
<table class=​"Bs nH iY" cellpadding=​"0" role=​"presentation">​

或发送电子邮件=在这里

<span class=​"vN Y7BVp" email=​"info@avatron.com">

...其中包含您真正想要的信息:

<div class=​"vT">​Avatron Software (info@avatron.com)​</div>​

所以我会通过以下方式来解决这个问题:

  1. 使用.getElementsByTagname('table')然后迭代直到我找到一个角色=“演示”
  2. 使用[thePresentationTable] .getElementsByTagname('span'),然后循环直到找到具有'email ='属性的人
  3. 使用树来查找全名文本节点,例如:[theEmailSpan] .firstChild,或[theEmailSpan] .firstChild.firstSibling或你有什么