代码语言
.
CSharp
.
JS
Java
Asp.Net
C
MSSQL
PHP
Css
PLSQL
Python
Shell
EBS
ASP
Perl
ObjC
VB.Net
VBS
MYSQL
GO
Delphi
AS
DB2
Domino
Rails
ActionScript
Scala
代码分类
文件
系统
字符串
数据库
网络相关
图形/GUI
多媒体
算法
游戏
Jquery
Extjs
Android
HTML5
菜单
网页交互
WinForm
控件
企业应用
安全与加密
脚本/批处理
开放平台
其它
【
Ruby
】
提取 HTML 文档中的链接和图片
作者:
壮壮
/ 发布于
2017/2/23
/
714
require 'rexml/document' require 'rexml/streamlistener' require 'set' class LinkGrabber include REXML::StreamListener attr_reader :links def initialize(interesting_tags = {'a' => %w{href}, 'img' => %w{src}}.freeze) @tags = interesting_tags @links = Set.new end def tag_start(name, attrs) @tags[name].each do |uri_attr| @links << attrs[uri_attr] if attrs[uri_attr] end if @tags[name] end def parse(text) REXML::Document.parse_stream(text, self) end end text = %{"test <a href="<a href="http://www.example.com/">http://www.example.com/"><a href="http://www.example.com/</a">http://www.example.com/</a>, <a href="http://www.example.com/blog/.">http://www.example.com/blog/. Email me at <a href="mailto:bob@example.com">b@e.com</a>.} grabber = LinkGrabber.new grabber.parse(text) p grabber.links
试试其它关键字
同语言下
.
改变 SSH 上的当前目录
.
列表 SSH 服务器上的文件
.
查询域名映射的所有IP地址
.
解析域名对应的 IP 地址
.
查询域名的 MX 记录
.
Ruby 使用 HTTP 代理的例子
.
调用远程对象
.
多次调用远程对象的方法
.
发起 HTTPS 请求
.
获取 HTTP 回应的编码和内容
可能有用的
.
改变 SSH 上的当前目录
.
列表 SSH 服务器上的文件
.
查询域名映射的所有IP地址
.
解析域名对应的 IP 地址
.
查询域名的 MX 记录
.
Ruby 使用 HTTP 代理的例子
.
调用远程对象
.
多次调用远程对象的方法
.
发起 HTTPS 请求
.
获取 HTTP 回应的编码和内容
壮壮
贡献的其它代码
(
8
)
.
mybatis如何遍历Map的key和value
.
udf使用间隔
.
获取 HTTP 服务器的信息
.
提取 HTML 文档中的链接和图片
.
网络相关
.
音频采集
.
字符串字串判断
.
模式匹配(kmp)
Copyright © 2004 - 2024 dezai.cn. All Rights Reserved
站长博客
粤ICP备13059550号-3