Chrome扩展从页面获取电子邮件

Chrome extension get email from page

本文关键字:获取 电子邮件 扩展 Chrome      更新时间:2023-09-26

所以这个想法是使chrome扩展搜索电子邮件地址在web电子邮件客户端,然后显示有关客户从数据库的信息。

我设法找到的是获得当前标签html源:从chrome扩展

获取当前页面的源HTML

然后使用split, regex或其他东西来获取电子邮件,只需调用一些php脚本来解析信息。一切都会很好,但我们使用的是使用iframe的"松鼠邮件",所以显然我得到的是一些标题和iframe链接。

谁能给我指个正确的方向?也许有可能得到标签文本而不是html源代码?从来没有任何chrome扩展的经验。任何能让它更快的帮助都是很棒的。我显然知道我想要收到的电子邮件的特定位置。

Casraf几乎排序,我只是坚持在这种情况下获得帧没有,因为它没有id选择器。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN">
<html><head>
<meta name="robots" content="noindex,nofollow">
<title>SquirrelMail</title>
</head><frameset cols="150, *" id="fs1">
<frame src="left_main.php" name="left" frameborder="1">
<frame src="right_main.php" name="right" frameborder="1">
</frameset>
</html>

假设你的iframe有一个可以使用的选择器

var iframe = document.querySelector('#iframe'),
    doc = iframe.contentDocument || iframe.contentWindow.document;

然后你可以使用JS在iframe的页面中找到元素并从那里获取内容。例如,如果在iframe的HTML中你有一个<span class="my-email-selector">email@address.com</span>,你可以这样做:

var email = doc.querySelector('.my-email-selector').innerText;

现在将包含电子邮件。

注意doc变量是document类型,因此它应该具有所有常规文档方法(location, querySelectot[All]等)

编辑:由于您有frame s而不是iframe s,并且它们确实有name属性,因此很容易访问它们:

var frame_left = window.frames['left'],
    frame_right = window.frames['right'];