`
gladstone
  • 浏览: 70992 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论

[RUBY盗摄流出] 迷途的羔羊啊,陈老师的宝石小秘书助侬回归家园

阅读更多
这次要说的是这个博客: 上次答应帮林子大了什么X都有童鞋把介个倒过来,过程说一下






首先,用firebug看看页面元素:




介个有什么规律捏?
  • 详细链接是包在class为articleTitle的<div>里头的。
  • 分页链接有规律, http://blog.sina.com.cn/s/indexlist_1233551893_1.html到 http://blog.sina.com.cn/s/indexlist_1233551893_14.html
  • 具体页面的正文,是在class为articleBody的<div>里头的。








然后,偷窥一下ruby的网页解析



准备ruby的网页解析库 hpricot :
Gem install hpricot
这东西很好用,操作dom元素跟jquery一样的简洁。代码只有下面这些(注释就不上鸟):


#!/usr/bin/ruby
require 'hpricot'
require 'open-uri'

article_urls = Array.new()

1.upto(14) do |i|
    doc = Hpricot.parse(open("http://blog.sina.com.cn/s/indexlist_1233551893_#{i}.html"))
    (doc/"div[@class='articleTitle']/a[@target='_blank']").each do |f|
    article_urls <<  f.attributes['href']
    end
end

index = 0
article_urls.each do |url|
    index +=1
    puts "now fuck:"+url
    doc = Hpricot.parse(open(url))
    title = (doc/"div[@class='articleTitle']/div/b").first.inner_html
    content =  (doc/"div[@id='articleBody']").first.inner_html
    time =  (doc/"span[@class='time']").first.inner_html

    file=File.open("D:\\sina_mockee\\#{index}.txt","w")
    file.puts title
    file.puts time
    file.puts content
    file.close
end

puts "#{article_urls.length} url crawled."


结果存到文本里面,接下来的处理是入库,就不多说鸟:





新浪的防盗链还是有效的,怎摸办捏...



陈老师点评: 事实告诉我们,东西并不都是长的才管用啊~

 发布时间:2008-10-24 05:17:22 | 阅读:47 | 评论:1 
分享到:
评论

相关推荐

    Ruby-Ruby的线性回归

    标题中的“Ruby-Ruby的线性回归”表明我们要讨论的是如何在Ruby编程语言中实现线性回归分析。线性回归是一种统计学方法,用于研究两个或多个变量之间的关系,特别是因变量与一个或多个自变量之间的关系。在这个场景...

    Ruby Ruby Ruby Ruby Ruby Ruby

    Ruby Ruby Ruby Ruby Ruby Ruby

    ruby使用案例红宝石

    Ruby是一种面向对象的脚本语言,以其简洁、优雅的语法和强大的编程能力而闻名。它由日本人松本行弘在1995年设计并开发,旨在提高开发者的生产力和程序的可读性。Ruby的核心设计理念是“程序员的幸福”,这使得它在...

    游戏脚本语言(ruby初步)

    Ruby语言的名称来源于红宝石(Ruby),它是第四种宝石,symbolize着富有生命力和激情的红色,而 ruby语言也正是如此,它具有生命力和激情,是一种活泼、灵活、多变的语言。 Ruby语言和Python语言是游戏脚本语言中...

    ruby DBI ruby DBI ruby DBI

    ruby DBI ruby DBI ruby DBIruby DBI ruby DBI ruby DBIruby DBI ruby DBI ruby DBIruby DBI ruby DBI ruby DBIruby DBI ruby DBI ruby DBIruby DBI ruby DBI ruby DBIruby DBI ruby DBI ruby DBIruby DBI ruby DBI ...

    Ruby-rubyinstall安装RubyJRubyRubiniusMagLevorMRuby

    在Ruby的世界里,管理不同的Ruby实现(如MRI、JRuby、Rubinius、MagLev和MRuby)是非常重要的,这有助于开发者根据项目需求选择最适合的运行时环境。`ruby-install`就是这样一个工具,它允许用户方便地安装和管理...

    Ruby-rubybuild编译和安装Ruby

    Ruby是一种动态、开源的编程语言,以其简洁、优雅的语法和强大的元编程能力著称。在Ruby开发中,为了管理不同版本的Ruby环境,我们常常会使用到`rbenv`和`ruby-build`这两个工具。本文将详细介绍如何使用`ruby-build...

    ruby2ruby.zip

    ruby2ruby 提供一些用来根据 RubyParser 兼容的 Sexps 轻松生成纯 Ruby 代码的方法。可在 Ruby 中轻松实现动态语言处理。 标签:ruby2ruby

    Ruby完全自学手册 下

    《Ruby完全自学手册》是一本完全覆盖Ruby和Ruby on Rails的完全自学手册。《Ruby完全自学手册》的特色是由浅入深、循序渐进,注重理论和实践的结合。虽然定位为入门手册,但是依然涉及许多高级技术和应用,覆盖到的...

    src-oepkgs/ruby-ruby2ruby

    src-oepkgs/ruby-ruby2rubysrc-oepkgs/ruby-ruby2rubysrc-oepkgs/ruby-ruby2rubysrc-oepkgs/ruby-ruby2rubysrc-oepkgs/ruby-ruby2rubysrc-oepkgs/ruby-ruby2rubysrc-oepkgs/ruby-ruby2rubysrc-oepkgs/ruby-ruby2...

    ruby源代码 ruby源代码 ruby源代码 ruby源代码2

    ruby源代码 ruby源代码 ruby源代码 ruby源代码2

    Ruby完全自学手册

    Ruby是一种简洁而功能强大的编程语言,由日本的松本行弘(Yukihiro "Matz" Matsumoto)在1993年开发,并于1995年公开发布。Ruby语言设计之初就非常注重开发人员的编程体验,它拥有自然、表达性强的语法,易于阅读和...

    ruby安装包,window安装包

    Ruby,一种简单快捷的面向对象(面向对象程序设计)脚本语言,在20世纪90年代由日本人松本行弘(Yukihiro Matsumoto)开发,遵守...因为Perl发音与6月诞生石pearl(珍珠)相同,因此Ruby以7月诞生石ruby(红宝石)命名。

    ruby books

    但我们可以推测这个压缩包可能包含了一整个图书馆的电子版Ruby书籍,每本书可能有单独的章节或部分,涵盖不同的话题,如Ruby基础、面向对象编程、测试驱动开发(TDD)、持续集成(CI/CD)、Ruby on Rails框架、宝石(gems...

    Ruby Under a Microscope An Illustrated Guide to Ruby Internals

    《Ruby Under a Microscope: An Illustrated Guide to Ruby Internals》这本书的标题和描述为我们揭开了Ruby语言内部工作机制的面纱。Ruby是一种以简单优雅的语法为核心的强大编程语言,但它内部所执行的无数不为人...

    ruby最新版稳定版

    Ruby,一种为简单快捷的面向对象编程(面向对象程序设计)而创的脚本语言,在20世纪90年代由日本人松本行弘(Yukihiro Matsumoto...因为Perl发音与6月诞生石pearl(珍珠)相同,因此Ruby以7月诞生石ruby(红宝石)命名。

    ruby源代码 ruby源代码 ruby源代码 ruby源代码4

    ruby源代码 ruby源代码 ruby源代码 ruby源代码4

    ruby安装包下载 | ruby环境搭建

    Ruby是一种强大的动态编程语言,广泛应用于Web开发,脚本编写,服务器管理等领域。为了在没有外网连接的环境中搭建Ruby环境,你需要提前下载并准备相关的安装包。在提供的压缩包中,包含了三个关键文件:`ruby-2.7.2...

Global site tag (gtag.js) - Google Analytics