最近终于空下来了,所以下个Ruby玩玩,安装Ruby很简单,去
官网下载一个
一键安装包既可,linux下的安装,大家Google下就有很多教程了.对于IDE网上说NetBeans支持得很完美,但是因为本人比较喜欢Eclipse,所以还是跟大家推荐
EasyEclipse for Ruby and Rails,当然你可以选择只下RoR的插件而不弄个全新的Eclipse.
以前一直在用Java写爬虫工具抓图片,对HttpClient包装,正则表达式处理那个是累啊,就算弄好了工具类,有时候一会又想不起来放哪儿,但Ruby对方面包装的就很强大,短短几十行代码就搞定了这一切:
页面获取和文件下载的方法.
util.rb:
require 'net/http'
def query_url(url)
return Net::HTTP.get(URI.parse(url));
end
def save_url(url,dir,filename)
filename = url[url.rindex('/')+1, url.length-1] if filename == nil || filename.empty?
require 'open-uri'
Dir.mkdir("#{dir}") if dir != nil && !dir.empty? && !FileTest.exist?(dir)
open(url) do |fin|
if true
File.new("#{dir}#{filename}","wb").close
open("#{dir}#{filename}","wb") do |fout|
while buf = fin.read(1024) do
fout.write buf
STDOUT.flush
end
end
end
end
end
抓取图片的具体应用:
require "util"
begin
start_url = 'http://list.mall.taobao.com/1424/g-d-----40-0--1424.htm'
while start_url != nil && !start_url.empty? do
print "开始下载#{start_url}\n"
content = query_url(start_url)
next_page = content.scan(/ <a href="(.*?)" class="next-page"><span>下一页<\/span><\/a>/)
next_url = nil
next_url = next_page[0][0] if next_page != nil && next_page.length > 0 && next_page[0].length > 0
imgs = content.scan(/<img src="(http:\/\/img[\d].*?)" \/>/)
for img in imgs
url = img[0];
save_url(url,"d:\\mall\\",nil)
end
start_url = next_url;
# break;
end
end
使用一天之后感觉ruby的语法很自然,很好理解,上手比较容易,而且相关包封装的也很好,确实比较适合拿来玩玩小程序.
分享到:
相关推荐
### Ruby语言入门教程:从安装到编写 #### 一、Ruby简介 Ruby是一种简洁、高效的面向对象编程语言,由日本人松本行弘(Yukihiro Matsumoto)于1995年设计并开发。其设计理念强调程序员的幸福感,追求代码的可读性...
本书教您如何使用Ruby on Rails开发和部署真正的,具有工业实力的Web应用程序,Ruby on Rails是为诸如Twitter,Hulu,GitHub和Yellow Pages等顶级网站提供支持的开源Web框架。
这个暑假回家没事干闲的蛋疼,正好手头有一本《七周七语言》,然后就开始从Ruby学起,到scala结束。中间的Io和prolog就被华丽丽的跳过了,因为prolog语法太奇葩,Io有没什么好的资料可以看,尽管我觉的Io应该会是一...
学习Ruby的笔记以及Demo源码.zip学习Ruby的笔记以及Demo源码.zip学习Ruby的笔记以及Demo源码.zip学习Ruby的笔记以及Demo源码.zip学习Ruby的笔记以及Demo源码.zip学习Ruby的笔记以及Demo源码.zip学习Ruby的笔记以及...
Ruby 是一种功能强大、灵活的编程语言,广泛应用于 Web 开发、脚本编写和系统管理等领域。下面是学习 Ruby 的一些实用建议:首先,了解 Ruby 的基本概念和语法。 Ruby 是一种面向对象的语言,具有简洁的语法和强大...
ruby基础笔记,自学笔记,ruby基础语法非常全面ruby基础笔记,自学笔记,ruby基础语法非常全面
用Ruby写的一个网络爬虫,用到了正则表达式 和哈希表
而`ruby-build`是`rbenv`的一个插件,它的主要功能是编译并安装各种版本的Ruby。 首先,你需要在你的系统上安装`rbenv`。这通常涉及克隆`rbenv`的GitHub仓库,并将其添加到PATH环境变量中。对于Unix或类Unix系统...
Ruby-QRcode库是Ruby编程语言中用于生成和解析QR码的一个强大工具。QR码,全称为Quick Response Code(快速响应码),是一种二维条形码,可以存储各种数据,如文本、URL、联系人信息、日历事件等,并且在手机扫描...
Ruby学习笔记 01 类的属性与方法 02 访问控制 03 Container(Array/Hash) 04 Iterator 05 简单数据类型 06 范围 07 方法 08 条件控制 09 异常处理
总之,Ruby-Wombat是一个强大的Web爬虫框架,它简化了数据抓取的过程,使开发者能够更专注于数据的分析和应用,而不是爬取本身的技术细节。通过学习和掌握Wombat,你可以快速地构建起自己的网络数据获取系统,为各种...
Ruby 学习笔记 1、简介 定义:一种简单快捷的面向对象脚本语言 开发者:松本行弘 开发时间:1995年 设计目的:A PROGRAMMER'S BEST FRIEND【程序员的最佳朋友】 文件扩展名:rb 2、语言特性 真正的面向对象编程语言 ...
总的来说,`rubyinstaller-devkit-3.0.2-1-x64 and Ruby 学习笔记.7z`文件包含了一个在Windows上开始Ruby编程所需的基本组件和学习资源。通过安装Ruby和DevKit,你可以轻松地编写、编译和运行Ruby代码,同时结合学习...
10. Rails框架:Ruby最有名的应用莫过于Ruby on Rails,这是一个快速开发Web应用的框架,遵循MVC(模型-视图-控制器)架构,极大地提高了开发效率。 压缩包内的“ruby-master”可能是一个Ruby项目或者教程的源代码...
他不仅在知名的Ruby相关网站上写文章和教程,还参与了Ruby的开发,并且是知名管理咨询公司麦肯锡&公司的Ruby应用开发者。Pat经常在Ruby会议上演讲,他的文章和演讲也经常被Ruby Weekly、Ruby5播客和The Ruby Show等...
6. **丰富的库**:Ruby拥有一个庞大的标准库,以及一个活跃的社区,提供了大量的第三方库和框架,如Rails、Sinatra等。 Ruby常用于Web开发、自动化脚本、系统管理任务等多种场景。Ruby on Rails是一个流行的服务器...
同时,文章介绍了如何在不同平台上搭建Ruby开发环境,并深入探讨了Ruby在Web开发中的应用,特别是Rails框架的安装和使用方法。 适合人群:对编程感兴趣的初学者和有一定基础的开发者。 使用场景及目标:① 帮助读者...
ruby是一种简单快捷的面向对象脚本语言 开发者:松本行弘 开发时间:1995年 设计目的:A PROGRAMMER'S BEST FRIEND【程序员的最佳朋友】 文件扩展名:rb 这个笔记里包含了ruby的整型,字符串,浮点数,布尔等基础...
适合人群:Ruby 初学者,希望深入了解和提高 Ruby 编程能力的技术人员。 使用场景及目标:提供一站式的学习路径,帮助学习者系统掌握 Ruby 编程,通过具体案例实操增强技能。主要应用场景包括Web 开发和日常脚本任务...
6. **安装和管理Gem**:Ruby的库和工具通常以Gem的形式分发,通过`gem install <gem_name>`命令可以安装Gem。例如,为了进行Web开发,你可能需要安装`rails` Gem,命令为`gem install rails`。 7. **创建和运行Ruby...