[#407882] Ruby extremely slow compared to PHP — Mick Jagger <lists@...>

Hello there, how are you? Hope you are fine. I am a PHP programmer

17 messages 2013/06/02

[#407908] TCPServer/Socket and Marshal problem — Panagiotis Atmatzidis <atma@...>

Hello,

18 messages 2013/06/03

[#407946] Is rubyquiz.com dead? — Alphonse 23 <lists@...>

Thread title says everything.

18 messages 2013/06/04

[#408012] Need help understanding recursion. — pedro oliva <lists@...>

Ive been reading Chris Pine's book 'Learn to Program' and its been going

11 messages 2013/06/06

[#408129] Getting Started With Development — Chamila Wijayarathna <cdwijayarathna@...>

I'm new to Ruby Development. I downloaded source from Github, but couldn't

24 messages 2013/06/11
[#408131] Re: Getting Started With Development — Per-erik Martin <lists@...> 2013/06/11

Ruby is often installed on linux, or can be easily installed with the

[#408146] Re: Getting Started With Development — "Chamila W." <lists@...> 2013/06/11

Per-erik Martin wrote in post #1112021:

[#408149] Re: Getting Started With Development — "Carlo E. Prelz" <fluido@...> 2013/06/11

Subject: Re: Getting Started With Development

[#408198] NokoGiri XML Parser — "Devender P." <lists@...>

Hi,

11 messages 2013/06/13

[#408201] trying to load a .rb file in irb — "Eric D." <lists@...>

I am trying to load a ruby program into irb and it will not load.

12 messages 2013/06/13

[#408205] Can I use Sinatra to render dynamic pages? — Ruby Student <ruby.student@...>

Hell Team,

18 messages 2013/06/13
[#408219] Re: Can I use Sinatra to render dynamic pages? — Nicholas Van Weerdenburg <vanweerd@...> 2013/06/14

You should be able to do this without JavaScript by using streaming.

[#408228] Re: Can I use Sinatra to render dynamic pages? — Ruby Student <ruby.student@...> 2013/06/14

Well, I got some good suggestions from everyone here. I thank you all for

[#408275] Compare and sort one array according to another. — masta Blasta <lists@...>

I have two arrays of objects that look something like this:

14 messages 2013/06/17

[#408276] Comparing objects — "Thom T." <lists@...>

How do I compare two objects in Ruby, considering only attributes

15 messages 2013/06/17

[#408307] getting the most out of Ruby — robin wood <lists@...>

I write a lot of scripts in Ruby, most are small simple things but some

13 messages 2013/06/18

[#408309] Creating ruby script exe — Rochit Sen <lists@...>

Hi All,

17 messages 2013/06/18

[#408357] Beginners problem with database and datamapper — cristian cristian <lists@...>

Hi all!

28 messages 2013/06/20

[#408437] How do I input a variable floating point number into Ruby Programs — "Michael P F." <lists@...>

I want to evaluate the following interactively:

10 messages 2013/06/23

[#408518] #!/usr/bin/env: No such file or directory — Todd Sterben <lists@...>

I am new to both linux and ruby. I am using Ubuntu and Ruby 1.9

17 messages 2013/06/27

[#408528] Designing a Cabinet class — Mike Vezzani <lists@...>

Hello all,

12 messages 2013/06/27

[#408561] Find elment in array of hashes — Rodrigo Lueneberg <lists@...>

array = {:id=>1, :price =>0.25} # index[0]

23 messages 2013/06/28

Beginners problem with database and datamapper

From: cristian cristian <lists@...>
Date: 2013-06-20 13:09:40 UTC
List: ruby-talk #408357
Hi all!

I'm a complete beginner at this so please bear with me...I dont program
at all but if I need to then I have been trying to use Ruby.

I made a hash with some URL's and i'm looping through this hash and
using the  url stored there and getting some info from a site that i'm
storing into a file. Im attaching my code. This actually works :)

Now I would like to store the information in a db table. So I would like
to modify my code. I created an sqlite3 db with two tables called 'urls'
and 'stats'. 'urls' have the columns 'ID','Description', 'URL' and
'stats' have the columns 'ID','Date','Title'.

Now, I need to connect to my database and fetch this data. I have used
DataMapper for this.

My questions:
Should I query the rows one by one?
Should I query the whole table store into a hash and the loop through?
When I fetch the row how can I get the column URL?

My working code:
require 'rubygems'
require 'mechanize'

url = {  "1" => "http://www.ruby-forum.com/",
    "2" => "http://www.stackoverflow.com/",
    "3" => "http://www.ruby-doc.org/"
  }
time=Time.now.strftime("%Y-%m-%d %H:%M")
File.open("Stats_Test.txt","a+") do |vStats|
#Loop - hash
  url.each do |number,url|
      agent = Mechanize.new
      page = agent.get(url)
      title = agent.page.title.strip
      vStats.puts "#{time}  #{number}  #{title}\n"
  end
end


My modified code so far:

require 'rubygems'
require 'mechanize'
require 'data_mapper'

#Sqlite3 connection
DataMapper.setup(:default, 'sqlite:///Ruby/Stats/StatsDB.sqlite')

class Url
  include DataMapper::Resource
end
class Stats
  include DataMapper::Resource
end

time=Time.now.strftime("%Y-%m-%d %H:%M")

int = 0
num = 3

#What to do here?
while int<num do
   ds = Url.get(int)
   #ds has the first row. Now how do I get the column 'URL'?
   agent = Mechanize.new
   page = agent.get(ds:url) #I want to give it the url from the table
   title = agent.page.title.strip #get the title from website
   #write title to database table stats
    #Havent thgought of this yet :)
end


Any suggestions are apreciated!

Br
cristian

-- 
Posted via http://www.ruby-forum.com/.

In This Thread

Prev Next