我正在处理一些 html 文档,每个文档都有一个链接列表,每个链接在打开时都有另一个链接列表,但是,每个链接列表可能有来自另一个列表的链接,我有一个哈希数组,其中只有一个链接一开始my %list = ($link1 => 1);
,到目前为止,我所做的是打开现有链接并循环遍历 html 文档中的所有链接(以下代码显示已解析链接的 html 内容的变量 $tree):
for my $node ( $tree->look_down('_tag' => 'a'))
{
next unless $node;
my $link = $node->attr('href');
unless(exists($list{$link}))
{
$list{$link} = 1;
}
}
现在我想做的是循环遍历哈希表,因为每次出现新链接时都会输入它。
我希望我已经清楚了。
编辑 :
这是我从中获取链接的页面,当从列表中选择一个链接时,有时会在另一个列表中找不到链接,因此为确保我拥有来自不同列表的所有链接,我打开每个链接并循环遍历列表,当有新链接时,我将其添加到哈希数组中。
更清楚地说,我的算法如下:
- 我有一个带有一个链接的哈希表
my %list = ($link1 => 1);
,值 1 表示该链接尚未打开,因此,我仍然没有检查它拥有的链接列表。 - 一旦我得到了链接列表,我就循环遍历它并检查哈希数组是否没有我循环遍历的链接之一
- 一旦我完成了上述列表的循环,我打开的第一个链接将更新为 2
$list{$link}=2
并传递到哈希表中的以下链接(请记住,每次找到新链接时都会输入哈希数组)
提前致谢