`
Hooopo
  • 浏览: 329356 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Programable Web系列之:Google REST

阅读更多
原来已经有人写过了:http://github.com/daimpi/google-rest/tree/master

引用
DESCRIPTION:
A Simple Ruby wrapper for the Google REST API

FEATURES/PROBLEMS:
No Problems.. my programs are perfect[size=large][/size]

哇咔咔..
签下来试用一下,还真不错:

$:.unshift File.join(File.dirname(__FILE__), "..", "lib")
require'pp'
require'google-rest'
include GoogleRest
client = GoogleSearch.new
#:type可设置 "web","books","news","blogs","video","local","images","patent"等
#分别对应搜网页,搜书,新闻...
#hl可选有"en","zh-cn"等..
results = client.search :q => "ruby", :hl =>'zh-cn'
pp results
results.each do |result|
   puts "+"*30
   puts ":cache url: #{result.cache_url}"
   puts ":content: #{result.content}"
   puts ":gsearch_result_class: #{result.g_search_result_class}"
   puts ":title #{result.title}"
   puts ":title no formatting: #{result.title_no_formatting}"
   puts ":url: #{result.url}"
   puts ":unescaped url: #{result.unescaped_url}"
   puts ":visible url: #{result.visible_url}"
end



[#<GoogleResult:0x2da0bcc
  @cache_url=
   "http://www.google.com/search?q=cache:U0idxbaGKSwJ:www.ruby-lang.org",
  @content=
   "A dynamic, interpreted, open source programming language with a focus on   simplicity and productivity. Site includes news, downloads, documentation, <b>...</b>",
  @gsearch_result_class="GwebSearch",
  @title="<b>Ruby</b> Programming Language",
  @title_no_formatting="Ruby Programming Language",
  @unescaped_url="http://www.ruby-lang.org/",
  @url="http://www.ruby-lang.org/",
  @visible_url="www.ruby-lang.org">,
 #<GoogleResult:0x2da0bb8
  @cache_url=
   "http://www.google.com/search?q=cache:Vpzq4nfiRmwJ:www.ruby-lang.org",
  @content=
   "\346\234\254\347\275\221\347\253\231\345\210\266\344\275\234\345\267\245\345\205\267\344\275\277\347\224\250<b>Ruby</b> \345\222\214Radiant CMS\357\274\214\345\271\266\344\270\224\346\234\211\346\235\245\350\207\252<b>Ruby</b> \347\244\276\345\214\272\344\270\200\344\272\233\344\273\244\344\272\272\351\252\204\345\202\262\347\232\204\344\274\232\345\221\230\345\205\261\345\220\214  \347\273\264\346\212\244\343\200\202 \345\246\202\346\236\234\346\202\250\346\234\211\344\273\273\344\275\225\347\226\221\351\227\256\346\210\226\350\200\205\344\270\215\346\230\216\347\231\275\347\232\204\346\263\250\351\207\212\350\257\267\350\201\224\347\263\273\346\210\221\344\273\254\347\232\204\347\253\231\347\202\271\347\256\241\347\220\206\345\221\230\343\200\202",
  @gsearch_result_class="GwebSearch",
  @title=
   "<b>Ruby</b> \347\250\213\345\272\217\350\256\276\350\256\241\350\257\255\350\250\200\345\256\230\346\226\271\347\275\221\347\253\231",
  @title_no_formatting=
   "Ruby \347\250\213\345\272\217\350\256\276\350\256\241\350\257\255\350\250\200\345\256\230\346\226\271\347\275\221\347\253\231",
  @unescaped_url="http://www.ruby-lang.org/zh_CN/",
  @url="http://www.ruby-lang.org/zh_CN/",
  @visible_url="www.ruby-lang.org">,
 #<GoogleResult:0x2d9fd1c
  @cache_url=
   "http://www.google.com/search?q=cache:qnANn5mkKr8J:en.wikipedia.org",
  @content=
   "<b>Ruby</b> is a dynamic, reflective, general purpose object-oriented programming   language that combines syntax inspired by Perl with Smalltalk-like features. <b>...</b>",
  @gsearch_result_class="GwebSearch",
  @title=
   "<b>Ruby</b> (programming language) - Wikipedia, the free encyclopedia",
  @title_no_formatting=
   "Ruby (programming language) - Wikipedia, the free encyclopedia",
  @unescaped_url="http://en.wikipedia.org/wiki/Ruby_(programming_language)",
  @url="http://en.wikipedia.org/wiki/Ruby_(programming_language)",
  @visible_url="en.wikipedia.org">,
 #<GoogleResult:0x2d9edf4
  @cache_url=
   "http://www.google.com/search?q=cache:oR7CKgTNjC4J:rubyonrails.org",
  @content=
   "RoR home; full stack, Web application framework optimized for sustainable   programming productivity, allows writing sound code by favoring convention over   <b>...</b>",
  @gsearch_result_class="GwebSearch",
  @title="<b>Ruby</b> on Rails",
  @title_no_formatting="Ruby on Rails",
  @unescaped_url="http://rubyonrails.org/",
  @url="http://rubyonrails.org/",
  @visible_url="rubyonrails.org">]
++++++++++++++++++++++++++++++
:cache url: http://www.google.com/search?q=cache:U0idxbaGKSwJ:www.ruby-lang.org
:content: A dynamic, interpreted, open source programming language with a focus on   simplicity and productivity. Site includes news, downloads, documentation, <b>...</b>
:gsearch_result_class: 
:title <b>Ruby</b> Programming Language
:title no formatting: Ruby Programming Language
:url: http://www.ruby-lang.org/
:unescaped url: http://www.ruby-lang.org/
:visible url: www.ruby-lang.org
++++++++++++++++++++++++++++++
:cache url: http://www.google.com/search?q=cache:Vpzq4nfiRmwJ:www.ruby-lang.org
:content: 本网站制作工具使用<b>Ruby</b> 和Radiant CMS,并且有来自<b>Ruby</b> 社区一些令人骄傲的会员共同  维护。 如果您有任何疑问或者不明白的注释请联系我们的站点管理员。
:gsearch_result_class: 
:title <b>Ruby</b> 程序设计语言官方网站
:title no formatting: Ruby 程序设计语言官方网站
:url: http://www.ruby-lang.org/zh_CN/
:unescaped url: http://www.ruby-lang.org/zh_CN/
:visible url: www.ruby-lang.org
++++++++++++++++++++++++++++++
:cache url: http://www.google.com/search?q=cache:qnANn5mkKr8J:en.wikipedia.org
:content: <b>Ruby</b> is a dynamic, reflective, general purpose object-oriented programming   language that combines syntax inspired by Perl with Smalltalk-like features. <b>...</b>
:gsearch_result_class: 
:title <b>Ruby</b> (programming language) - Wikipedia, the free encyclopedia
:title no formatting: Ruby (programming language) - Wikipedia, the free encyclopedia
:url: http://en.wikipedia.org/wiki/Ruby_(programming_language)
:unescaped url: http://en.wikipedia.org/wiki/Ruby_(programming_language)
:visible url: en.wikipedia.org
++++++++++++++++++++++++++++++
:cache url: http://www.google.com/search?q=cache:oR7CKgTNjC4J:rubyonrails.org
:content: RoR home; full stack, Web application framework optimized for sustainable   programming productivity, allows writing sound code by favoring convention over   <b>...</b>
:gsearch_result_class: 
:title <b>Ruby</b> on Rails
:title no formatting: Ruby on Rails
:url: http://rubyonrails.org/
:unescaped url: http://rubyonrails.org/
:visible url: rubyonrails.org


不过,在测试搜书的时候出现错误..查了下源代码,是这里的问题:

def initialize(result)
    result.each do |key, value|
      string ="#{underscore(key.to_s)}='#{value'}"
      eval "@#{string}"
    end
  end

原来搜关键词ruby搜到了《the pragmatic programmer's guide》......看来高手也犯错误..
改了一下:
def initialize(result)
    result.each do |key, value|
      string = %Q{#{underscore(key.to_s)}=%q{#{value}}}
      eval "@#{string}"
    end
  end


2
0
分享到:
评论
2 楼 googya 2011-01-10  
还有这样的好东西。。。。。
1 楼 googya 2011-01-10  
还有这样的好东西。。。。。。

相关推荐

    L-gica-Programable:Proyectos deLógica可编程

    L-gica-Programable:Proyectos deLógica可编程

    ODR配置实例[归纳].pdf

    ODR配置实例[归纳].pdf

    Automata Programable Twido.rar_WINDOWS__WINDOWS_

    AUTOMATA PROGRAMABLE TWIDO

    Altera Programmable Logic Device

    ALTERA可编程逻辑器件及其应用,是对于初学者极有意义的一本书。

    tcpkit:tcpkit旨在使网络数据包可通过Lua脚本进行编程

    安装$ git clone https://github.com/git-hulk/tcpkit.git tcpkit$ cd tcpkit$ sudo make && make install用法the tcpkit was designed to make network packets programable with LUA by @git-hulk -h, Print the ...

    基于Zedboard的掌静脉采集认证系统设计

    该系统由片上处理系统(Processing System,PS)完成掌静脉图像采集、预处理,可编程序逻辑阵列(Programable Logic,PL)实现特征提取算法。结果表明,静脉特征提取算法的FPGA实现可显著缩短识别时间,使整个识别认证...

    《移动机器人》课件-第2章-移动机器人硬件机构.pptx

    它是由嵌入式微电子技术芯片(包括微处理器芯片、定时器、序列发生器或控制器等一系列微电子器件)来控制的电子设备或装置,用于控制、监视或者辅助操作。 嵌入式控制器优点: 具有开放性和可伸缩性的体系结构, 可...

    PLD/FPGA入门 新手必备基础知识

    PLD是可编程逻辑器件(Programable Logic Device)的简称,FPGA是现场可编程门阵列(Field Programable Gate Array)的简称,两者的功能基本相同,只是实现原理略有不同,所以我们有时可以忽略这两者的区别,统称为可...

    基础电子中的PLD/FPGA入门 新手必备基础知识

    PLD是可编程逻辑器件(Programable Logic Device)的简称,FPGA是现场可编程门阵列(Field Programable Gate Array)的简称,两者的功能基本相同,只是实现原理略有不同,所以我们有时可以忽略这两者的区别,统称为可...

    STC89C52单片机简介

    STC89C52是一种带8K字节闪烁可编程可檫除只读存储器(FPEROM-Flash Programable and Erasable Read Only Memory )的低电压,高性能COMOS8的微处理器,俗称单片机。

    EDA/PLD中的针对FPGA内缺陷成团的电路可靠性设计研究

    摘要:文章分析了集成电路内缺陷成团机理及其对集成电路成品率的影响,应用集成电路成品率预计模型,分析了FPGA内缺陷成团对片内冗余容错电路可靠性的影响,据此提出...现场可编程门阵列(FPGA —Field Programable Gat

    针对FPGA内缺陷成团的电路可靠性设计研究

    摘要:文章分析了集成电路内缺陷成团机理及其对集成电路成品率的影响,应用集成电路成品率预计模型,分析了FPGA内缺陷成团对片内冗余容错电路可靠性的影响,据此提出...现场可编程门阵列(FPGA —Field Programable Gat

    i.mx RT-1050 下载工具和板上系统

    The i.MX RT Series is industry’s first crossover processor provided by NXP. This document desribes how to program ...RT1050 ROM and generate programable image supported by Flashloader.

    数学函数曲线编辑器(可带动画)

    MT_Programable,//可编程 每种曲线类型都可以带动画,只需要勾选动画选项,然后在函数公式中引入变量time。 可以通过数学函数设置曲线颜色。 可以设置自变量的作用域,动画的时间范围等。 可编程效果可以自定义...

    FPGA研发之道 FPGA是个什么玩意?

    其英文名 feild programable gate arry 。很长,但不通俗。通俗来说,是一种功能强大似乎无所不能的器件。通常用于通信、网络、图像处理、工业控制等不同领域的器件。就像ARM、DSP等嵌入式器件一样,成为无数码农码...

    基础电子中的FPGA研发之道 FPGA是个什么玩意?

    其英文名 feild programable gate arry 。很长,但不通俗。通俗来说,是一种功能强大似乎无所不能的器件。通常用于通信、网络、图像处理、工业控制等不同领域的器件。就像ARM、DSP等嵌入式器件一样,成为无数码农码...

    VHDL.101.Everything.you.need.to.know.to.get.started

    VHDL (VHSIC Hardware Description Language) is a hardware programming language commonly used for FPGA (Field Programable Gate Array) or ASIC (Application Specific Integrated Circuit) designs....

    FPGA研发之道(1)FPGA是个什么玩意?

    其英文名 feild programable gate arry 。很长,但不通俗。通俗来说,是一种功能强大似乎无所不能的器件。通常用于通信、网络、图像处理、工业控制等不同领域的器件。就像ARM、DSP等嵌入式器件一样,成为无数码农码...

    基于CPLD的RS-232串口通信实现

    摘要:为了实现PC机与CPLD的通信,进行了相应的研究。... CPLD(Complex Programable Logic Device)是一种复杂的用户可编程逻辑器件。采用连续连接结构,延时可预测,从而使电路仿真更加准确。CPL

    EDA/PLD中的基于CPLD的RS-232串口通信实现

    摘要:为了实现PC机与CPLD的通信,进行了相应的研究。... CPLD(Complex Programable Logic Device)是一种复杂的用户可编程逻辑器件。采用连续连接结构,延时可预测,从而使电路仿真更加准确。CPL

Global site tag (gtag.js) - Google Analytics