免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 13235 | 回复: 16

ruby实例 [复制链接]

论坛徽章:
0
发表于 2011-04-19 12:56 |显示全部楼层
ruby实例


1.抓取百度新歌Top100的歌名及歌手名单
  1. require "open-uri"
  2. require "hpricot"
  3. doc = open("http://list.mp3.baidu.com/list/newhits.html?id=1#top1") { |f| Hpricot(f) }
  4. doc.search(".border").each do |table|
  5.    table.search("a").each do |link|
  6.     print link.inner_html
  7.    end
  8.    puts
  9. end
复制代码
2.多线程端口扫描器
  1. require 'socket'
  2. include Socket::Constants
  3. ports = (1..1024).to_a
  4. threads = []
  5. time1 = Time.now
  6. for port in ports
  7.     threads << Thread.new(port) do |theport|
  8.         begin
  9.             sock = Socket.new(AF_INET, SOCK_STREAM, 0)
  10.             sockaddr = Socket.pack_sockaddr_in(theport, 'localhost')
  11.             sock.connect(sockaddr)
  12.             puts "Port:#{theport} is Opend! "
  13.             sock.close
  14.         rescue
  15.             #...
  16.         end
  17.     end
  18. end
  19. threads.each {|thr| thr.join}
  20. puts " 共耗时:#{Time.now - time1}秒"
复制代码
3.查看外网IP地址
  1. require 'socket'
  2. require 'open-uri'
  3. inner_ip = Socket.getaddrinfo(Socket.gethostname, Socket::AF_INET)[0][3]
  4. html = URI.parse("http://www.baidu.com").read
  5. outer_ip = html.scan(/(([0-9]{1,3}.?){4})/).flatten.first
  6. puts "内网IP地址:#{inner_ip}"
  7. puts "外网IP地址:#{outer_ip}"
复制代码
4.多线程下载
  1. #多线程批量下载http://www.milw0rm.com/上的exploits,自动存放。

  2. require "open-uri"
  3. if $*[0]==nil or $*[1]==nil or $*[2]==nil
  4. abort "用法示例:ruby #$0 开始数 结束数 存放的目录 EX:如ruby #$0 200 300 c:\\1 "
  5. end
  6. time1 = Time.now
  7. threads = []
  8. for i in $*[0]..$*[1]
  9.    exploits= "http://www.milw0rm.com/exploits/"+i.to_s
  10.    threads << Thread.new(i) do |thei|
  11.      begin
  12.      data=open(exploits){|f|f.read}
  13.      open("#{$*[2]}\\#{thei}.htm","wb"){|f|f.write(data)}
  14.      print thei,"-"
  15.      rescue
  16.       #...如果没有这个url,显示404不去管它,让它没有错误回显
  17.     end
  18. end
  19. end
  20. threads.each {|thr| thr.join}
  21. puts " 下载完成,共耗时:#{Time.now - time1}秒"
复制代码
4.模拟登录页面

  1. #coding: utf-8 #登录出现中文才需要使用
  2. require "win32ole" #包含库
  3. ie = WIN32OLE.new('internetExplorer.Application')
  4. ie.visible = true #这个时候就可以看到一个ie的界面出来了
  5. ie.navigate('http://localhost/login.php') #转到这个页面
  6. sleep(0.1) until ie.busy == false #sleep 直到ie.busy为false 页面完全载入为止
  7. ie.Document.getElementById("username").value = "admin" #输入账户名
  8. ie.Document.getElementById("password").value = "123456" #输入密码
  9. ie.Document.getElementById("submit").click #登录按钮的id是btn1 模拟点击一下
复制代码

论坛徽章:
46
15-16赛季CBA联赛之四川
日期:2018-03-27 11:59:132015年亚洲杯之沙特阿拉伯
日期:2015-04-11 17:31:45天蝎座
日期:2015-03-25 16:56:49双鱼座
日期:2015-03-25 16:56:30摩羯座
日期:2015-03-25 16:56:09巳蛇
日期:2015-03-25 16:55:30卯兔
日期:2015-03-25 16:54:29子鼠
日期:2015-03-25 16:53:59申猴
日期:2015-03-25 16:53:29寅虎
日期:2015-03-25 16:52:29羊年新春福章
日期:2015-03-25 16:51:212015亚冠之布里斯班狮吼
日期:2015-07-13 10:44:56
发表于 2011-04-19 14:57 |显示全部楼层
老大,把您签名改了吧。这么NB的人显得有失水准啊

论坛徽章:
0
发表于 2011-04-19 16:34 |显示全部楼层
老大,把您签名改了吧。这么NB的人显得有失水准啊
zhlong8 发表于 2011-04-19 14:57



    哈哈,不怕不怕!这不,你注意到了!这签名,啧啧啧,漂亮!

论坛徽章:
0
发表于 2011-04-20 09:14 |显示全部楼层
very nice.

论坛徽章:
0
发表于 2011-04-20 10:14 |显示全部楼层
一直很佩服村草兄的勤劳

原帖见这里:
http://my.oschina.net/u/130017/blog/15518

论坛徽章:
0
发表于 2011-04-20 20:51 |显示全部楼层
老大,把您签名改了吧。这么NB的人显得有失水准啊
zhlong8 发表于 2011-04-19 14:57


    楼主会不会写Ruby代码真不好说~

论坛徽章:
46
15-16赛季CBA联赛之四川
日期:2018-03-27 11:59:132015年亚洲杯之沙特阿拉伯
日期:2015-04-11 17:31:45天蝎座
日期:2015-03-25 16:56:49双鱼座
日期:2015-03-25 16:56:30摩羯座
日期:2015-03-25 16:56:09巳蛇
日期:2015-03-25 16:55:30卯兔
日期:2015-03-25 16:54:29子鼠
日期:2015-03-25 16:53:59申猴
日期:2015-03-25 16:53:29寅虎
日期:2015-03-25 16:52:29羊年新春福章
日期:2015-03-25 16:51:212015亚冠之布里斯班狮吼
日期:2015-07-13 10:44:56
发表于 2011-04-21 09:52 |显示全部楼层
楼主会不会写Ruby代码真不好说~
x9x9 发表于 2011-04-20 20:51



    我很赞同

论坛徽章:
0
发表于 2011-04-21 15:36 |显示全部楼层
楼主会不会写Ruby代码真不好说~
x9x9 发表于 2011-04-20 20:51



    我承认,我不会写ruby代码,但是每天为了给ruby版找各种资料,没功劳也有苦劳,还是希望各位能支持!拜托了!

论坛徽章:
0
发表于 2011-04-21 21:12 |显示全部楼层
别打击村艹了,他在支持Ruby版呢,应该感谢他!

论坛徽章:
0
发表于 2011-04-22 11:13 |显示全部楼层
回复 9# 2gua


    谢谢瓜哥!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP