我需要解析gmail消息中的内容,但只解析当前打开的gmail消息中的内容,而不是整个文档。例如,如果我们以这种url格式打开gmail
https://mail.google.com/mail/u/1/#inbox/164a1b634b58699f
这是特定消息的页面,而不是gmail的整个正文。
为了解析内容,我使用了treewalker,如下所示
var scriptFilter = {
acceptNode: function(node) {
if (node.parentNode.nodeName !== 'SCRIPT' || node.parentNode.nodeName !== 'STYLE') {
return NodeFilter.FILTER_ACCEPT;
}
}
};
var walker = document.createTreeWalker(
document.body,
NodeFilter.SHOW_TEXT,
scriptFilter, // only needs the pure content from currently opened gmail message body
false
);
var node;
var textNodes = [];
while(node = walker.nextNode()) {
textNodes.push(node.nodeValue);
}
console.log(textNodes);
这会解析整个文档的内容,但是我只需要解析当前打开的gmail邮件正文。
仅是当前打开的gmail消息的正文部分,如屏幕截图
答案 0 :(得分:-1)
我认为使用gmail api阅读消息会容易得多(也更干净) https://developers.google.com/gmail/api/v1/reference/users/messages/get