use LWP::Simple;
use HTML::LinkExtor; $html = get("http://www.baidu.com");
$link = HTML::LinkExtor->new(\&check);
$link->parse($html); sub check{
($tag, %links) = @_;
print "$tag\n";
foreach $key(keys %links){
print "$key -> $links{$key}\n";
}
} #$tag为标签类型, 如a, link, img, script等
#%links为hash类型, 键为链接名,值为链接值
#比如对于a标签, links中的key为href, 值为href中的链接名
# link
# href -> /favicon.ico
# link
# href -> /content-search.xml
# link
# href -> //www.baidu.com/img/baidu.svg
# link
# href -> //s1.bdstatic.com
# link
# href -> //t1.baidu.com
# link
# href -> //t2.baidu.com
# link
# href -> //t3.baidu.com
# link
# href -> //t10.baidu.com
# link
# href -> //t11.baidu.com
# link
# href -> //t12.baidu.com
# link
# href -> //b1.bdstatic.com
# img
# src -> //www.baidu.com/img/bd_logo1.png

这个代码打印页面中的所有标签名与对应的link链接地址

如果我们要打印其中的所有img地址呢,那我们可能用$tag来判断是哪种标签, 从而再进一步提取数据

具体可以看这里: perl HTML::LinkExtor模块(2)

perl HTML::LinkExtor模块(1)的更多相关文章

  1. perl HTML::LinkExtor模块(2)

    use LWP::Simple; use HTML::LinkExtor; $html_code = get("https://tieba.baidu.com/p/4929234512&qu ...

  2. Perl的Expect模块学习

    Perl的Expect模块学习 http://www.xuebuyuan.com/1852717.html

  3. 用Perl编写Apache模块续二 - SVN动态鉴权实现SVNAuth 禅道版

    代码地址:https://code.csdn.net/x3dcn/svnauth 以禅道项目管理系统的数据库结构为标准,实现了可用的svn authz验证功能. 以用户名.密码.项目的acl开发程度o ...

  4. 用Perl编写Apache模块续 - SVNAuth

    目标:以整合各类项目管理系统中的用户体系及权限体系为目标,实现SVN的集成式动态鉴权 支持平台:usvn.禅道等 - 开发中,本文仅对前期的探索工作做点整理 开发环境: Windows.XAMPP 1 ...

  5. 用Perl编写Apache模块

    前言 Apache被许多大流量网站所嫌弃,但很多企业级的场景则更为适用. Apache httpd 从 2.0 之后,已经不仅仅局限于一个 http 的服务器,更是一个完善而强大.灵活而健壮且容易扩展 ...

  6. Linux下安装Perl和Perl的DBI模块

    今天在虚拟机测试shell脚本的时候,有些命令使用不了. 比如说 mysqlhotcopy ,它提示Perl的版本太低. 我用的 RedHat9 的Perl才5.8.0版本...(2002年以前的) ...

  7. perl Mail::Sender模块发送邮件

    #!/usr/bin/perl -w use strict; use Mail::Sender; ; ){ my $sender = Mail::Sender->new({ smtp => ...

  8. Perl List::Util模块用法详解

    本文介绍Perl标准库List::Utils中的列表工具,有时候它们非常好用.比如Perl中测试列表中是否包含某个元素(某个元素是否存在于列表中)没有比较直接比较方便的功能,但使用List::Util ...

  9. Perl包和模块(内容来自beginning perl)

    单文件版的perl程序只能用于构建较小的脚本程序.当代码规模较大时,应该遵循下面两条规则来构建程序.这样能将程序的各个部分按功能一个一个地细化,便于维护,也便于后续开发. 能复用的代码放进函数 能复用 ...

随机推荐

  1. C# 知识回顾 - 你真的懂异常(Exception)吗?

    你真的懂异常(Exception)吗? 目录 异常介绍 异常的特点 怎样使用异常 处理异常的 try-catch-finally 捕获异常的 Catch 块 释放资源的 Finally 块 一.异常介 ...

  2. python数据类型二

    阅读目录 1.列表的去嵌套 2.元组 3.range 列表的增删改查 一,增: 注意  list和str是不一样的,lst可以发生改变,所以直接就在原来的对象上进行可操作 追加模式 lst = ['麻 ...

  3. JS详细图解全方位解读this

    JS详细图解全方位解读this 对于this指向的理解中,有这样一种说法:谁调用它,this就指向谁.在我刚开始学习this的时候,我是非常相信这句话的.因为在一些情况下,这样理解也还算说得通.可是我 ...

  4. CF484E Sign on Fence && [国家集训队]middle

    CF484E Sign on Fence #include<bits/stdc++.h> #define RG register #define IL inline #define _ 1 ...

  5. BZOJ2178:圆的面积并——题解

    https://www.lydsy.com/JudgeOnline/problem.php?id=2178 给出N个圆,求其面积并. simpson,将圆劈成两半,假设上面的叫上壳,下面的叫下壳,对这 ...

  6. BZOJ1857:[SCOI2010]传送带——题解

    http://www.lydsy.com/JudgeOnline/problem.php?id=1857 Description 在一个2维平面上有两条传送带,每一条传送带可以看成是一条线段.两条传送 ...

  7. Linux环境下用Weblogic发布项目【三】 -- 启动、登陆、停止WebLogic

    一.启动WebLogic: 1.启动前,修改访问端口.IP地址方法: 在config.xml中修改,具体路径如下: /root/Oracle/Middleware/user_projects/doma ...

  8. 使用py-faster-rcnn训练VOC2007数据集时遇到问题

    使用py-faster-rcnn训练VOC2007数据集时遇到如下问题: 1. KeyError: 'chair' File "/home/sai/py-faster-rcnn/tools/ ...

  9. Dumpsdecrypted

    Dumps decrypted mach-o files from encrypted iPhone applications from memory to disk. This tool is ne ...

  10. ZooKeeper食谱(八)

    使用ZooKeeper构造高级别应用的指南 在这个文章中,你将会发现使用ZooKeeper来实现高级别功能的指南.所有的它们在客户端上被实现而不需要ZooKeeper特别的支持.希望社区将注意到这些约 ...