我的ruby的hello world
来源:互联网 发布:设ab均为n阶对称矩阵 编辑:程序博客网 时间:2024/04/29 06:14
学习ruby,这是学习后写的第一个小程序。
这个程序的目的是抓取google搜索hadoop的前一百条数据,写入数据库,并输出。
有几个要点:
1、连接数据库,向数据库中插入数据
2、抓取google的数据
通过查资料要调用google的API,使用google的API还要先申请API key。
然后要抓取100条数据的话,需要start参数,因为API一次返回默认返回10条,使用start参数就可以指定每次开始抓取数据的条数。
require "mysql"
require "rubygems"require "json"
require "open-uri"
require "net/http"
begin
dbh=Mysql.real_connect("127.0.0.1","root","password","rubydatebase")
puts "Connection Successful"
puts "server version:" + dbh.get_server_info
count=1
num=100
urlstr = "https://www.googleapis.com/customsearch/v1?key=MYKEY&cx=013036536707430787589:_pqjad5hr1a&q=hadoop&alt=json"
while(count < num) do
uri = urlstr + "&start=" + count.to_s
url = URI.parse(uri)
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Get.new(url.request_uri)
response = http.request(request)
json = response.body
out=[]
out=JSON.parse(json)
outData=[]
outData=out["items"]
for value in outData
url=value["link"]
title=value["title"]
context=value["snippet"]
puts("#{count}:","#{url}","#{title}","#{context}")
col2 = dbh.escape_string("#{title}")
col3 = dbh.escape_string("#{context}")
count = count +1
end
end
dbh.close if dbh
end
- 我的ruby的hello world
- 我的Hello World
- 我的 Hello World
- 我的Hello World
- 我的博客Hello World
- 我的JAVA"Hello World"
- 我的webservice Hello world-axis
- Hello World -- 我的第一个程序
- 我的第一篇文章 Hello World
- 我的第一个Java“Hello World!”
- RUBY学习之旅(四):JRUBY的hello world
- Ruby开发工具的安装与“Hello World”
- Ruby on Rails基于ruby2.4.2的hello world
- hello world, ruby
- Ruby之Hello World
- Ruby hello world
- JMX的Hello World
- Hello World 的故事
- 具说看完这21个故事的人,30岁前都成了亿万富翁。
- 说CAD开发 最简单角度看CAD软件
- Android源码各目录内容
- 王轲:如果再让我做一回产品经理
- 计算几何算法概论
- 我的ruby的hello world
- 2013 look for a big change
- SQL语句 插入数据的三种写法
- HDOJ 【C】 2010 水仙花数
- 九度1061 成绩排序
- ONVIF测试方法及工具
- 组装linux
- MongoDB在windows下安装配置
- GDI+ ColorMatrix的完全揭秘与代码实现