如何在Perl中从正文电子邮件中提取href?

森妮弗

我正在尝试提取一些URL,这些URL可以是一个以上的邮件,它们可以是正文电子邮件中的内容。

我正在尝试使用以下方法解析网址:

use strict;
use warnings;
use Net::IMAP::Simple;
use Email::Simple;
use IO::Socket::SSL;

# here must be the connection to imap hidden for economize space

my $es = Email::Simple->new( join '', @{ $imap->get($i) } );
my $text = $es->body;
print $text;
my $matches = ($text =~/<a[^>]*href="([^"]*)"[^>]*>.*<\/a>/);
print $matches;

在$ text上,我有下一个文本:

 --047d7b47229eb3d9f404e58fd90a
    Content-Type: text/plain; charset=ISO-8859-1

    Try1 <http://www.washingtonpost.com/>

    Try2 <http://www.thesun.co.uk/sol/homepage/>

    --047d7b47229eb3d9f404e58fd90a
    Content-Type: text/html; charset=ISO-8859-1

    <div dir="ltr"><a href="http://www.washingtonpost.com/">Try1</a><br><div><br></div><div><a href="http://www.thesun.co.uk/sol/homepage/">Try2</a><br></div></div>

    --047d7b47229eb3d9f404e58fd90a--

程序的输出给了我一个1……。

任何人都可以帮忙吗?

感谢您的建议。

达西姆

Email :: Simple不适合MIME消息。改用Courriel正则表达式不适用于HTML解析。使用Web :: Query代替。

use Courriel qw();
use Web::Query qw();

my $email = Courriel->parse( text => join …);
my $html = $email->html_body_part;
my @url = Web::Query->new_from_html($html)->find('a[href]')->attr('href');
__END__
http://www.washingtonpost.com/
http://www.thesun.co.uk/sol/homepage/

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用javaScript在HTML电子邮件中提取VML(Outlook代码)中的href链接?

来自分类Dev

在正文电子邮件中发送MHT文件

来自分类Dev

如何从Excel中的电子邮件中提取结尾

来自分类Dev

如何从文件中提取电子邮件?

来自分类Dev

如何从pdf中提取电子邮件

来自分类Dev

如何从电子邮件正文中提取附件(编码为base64)

来自分类Dev

使用R中的Regex从文本正文中提取原始电子邮件发件人

来自分类Dev

如何使用python将Outlook中的电子邮件正文提取并解析为pandas df?

来自分类Dev

如何使用Python在Outlook中提取电子邮件正文的一小部分?

来自分类Dev

电子邮件的Vmime提取正文

来自分类Dev

从Outlook电子邮件正文中提取单词,同时使用预定义的模板回复电子邮件

来自分类Dev

如何从用户数组中提取电子邮件

来自分类Dev

如何从原始电子邮件中提取图像?

来自分类Dev

如何仅从电子邮件日期中提取年份

来自分类Dev

如何从原始电子邮件中提取图像?

来自分类Dev

如何从电子邮件标题中提取附件?

来自分类Dev

如何使用grep从日志中提取电子邮件

来自分类Dev

如何在Delphi中将TMemo用于电子邮件正文

来自分类Dev

从列R中的不同电子邮件中提取特定电子邮件

来自分类Dev

Powershell电子邮件:如何在电子邮件正文中添加新行?

来自分类Dev

如何使用Java从Outlook电子邮件2010中提取附件?

来自分类Dev

正则表达式将从Outlook电子邮件正文中提取金额

来自分类Dev

从Gmail电子邮件正文中提取电话号码

来自分类Dev

通过smtplib发送电子邮件时如何在电子邮件内容中添加href链接

来自分类Dev

如何在go中获取电子邮件正文(使用imap)?

来自分类Dev

如何在VBA的电子邮件正文中的HTML项目符号列表中添加填充?

来自分类Dev

如何在阵列中存储Outlook电子邮件正文-Powershell?

来自分类Dev

如何在Lotus Notes 8.5.2中的电子邮件正文中搜索?

来自分类Dev

如何使用ADF从Outlook中检索电子邮件的正文

Related 相关文章

  1. 1

    如何使用javaScript在HTML电子邮件中提取VML(Outlook代码)中的href链接?

  2. 2

    在正文电子邮件中发送MHT文件

  3. 3

    如何从Excel中的电子邮件中提取结尾

  4. 4

    如何从文件中提取电子邮件?

  5. 5

    如何从pdf中提取电子邮件

  6. 6

    如何从电子邮件正文中提取附件(编码为base64)

  7. 7

    使用R中的Regex从文本正文中提取原始电子邮件发件人

  8. 8

    如何使用python将Outlook中的电子邮件正文提取并解析为pandas df?

  9. 9

    如何使用Python在Outlook中提取电子邮件正文的一小部分?

  10. 10

    电子邮件的Vmime提取正文

  11. 11

    从Outlook电子邮件正文中提取单词,同时使用预定义的模板回复电子邮件

  12. 12

    如何从用户数组中提取电子邮件

  13. 13

    如何从原始电子邮件中提取图像?

  14. 14

    如何仅从电子邮件日期中提取年份

  15. 15

    如何从原始电子邮件中提取图像?

  16. 16

    如何从电子邮件标题中提取附件?

  17. 17

    如何使用grep从日志中提取电子邮件

  18. 18

    如何在Delphi中将TMemo用于电子邮件正文

  19. 19

    从列R中的不同电子邮件中提取特定电子邮件

  20. 20

    Powershell电子邮件:如何在电子邮件正文中添加新行?

  21. 21

    如何使用Java从Outlook电子邮件2010中提取附件?

  22. 22

    正则表达式将从Outlook电子邮件正文中提取金额

  23. 23

    从Gmail电子邮件正文中提取电话号码

  24. 24

    通过smtplib发送电子邮件时如何在电子邮件内容中添加href链接

  25. 25

    如何在go中获取电子邮件正文(使用imap)?

  26. 26

    如何在VBA的电子邮件正文中的HTML项目符号列表中添加填充?

  27. 27

    如何在阵列中存储Outlook电子邮件正文-Powershell?

  28. 28

    如何在Lotus Notes 8.5.2中的电子邮件正文中搜索?

  29. 29

    如何使用ADF从Outlook中检索电子邮件的正文

热门标签

归档