[#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

Re: Beginners problem with database and datamapper

From: Panagiotis Atmatzidis <atma@...>
Date: 2013-06-20 16:10:50 UTC
List: ruby-talk #408361
Hello,

On 20 =CE=99=CE=BF=CF=85=CE=BD 2013, at 15:09 , cristian cristian =
<lists@ruby-forum.com> wrote:

> Hi all!
>=20
> 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.
>=20
> 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 :)
>=20
> 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'.
>=20
> Now, I need to connect to my database and fetch this data. I have used
> DataMapper for this.
>=20
> 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?
>=20
> My working code:
> require 'rubygems'
> require 'mechanize'
>=20
> url =3D {  "1" =3D> "http://www.ruby-forum.com/",
>    "2" =3D> "http://www.stackoverflow.com/",
>    "3" =3D> "http://www.ruby-doc.org/"
>  }
> time=3DTime.now.strftime("%Y-%m-%d %H:%M")
> File.open("Stats_Test.txt","a+") do |vStats|
> #Loop - hash
>  url.each do |number,url|
>      agent =3D Mechanize.new
>      page =3D agent.get(url)
>      title =3D agent.page.title.strip
>      vStats.puts "#{time}  #{number}  #{title}\n"
>  end
> end
>=20
>=20
> My modified code so far:
>=20
> require 'rubygems'
> require 'mechanize'
> require 'data_mapper'
>=20
> #Sqlite3 connection
> DataMapper.setup(:default, 'sqlite:///Ruby/Stats/StatsDB.sqlite')
>=20

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

Why do you create these two classes? It's not wrong, I just don't get =
what are you trying to do here?

I don't see any 'properties' defined there anyway.

>=20
> time=3DTime.now.strftime("%Y-%m-%d %H:%M")
>=20
> int =3D 0
> num =3D 3
>=20
> #What to do here?
> while int<num do
>   ds =3D Url.get(int)
>   #ds has the first row. Now how do I get the column 'URL'?

Try "Url.get.all" and "Url.get.all.class" to see what kind of object is =
returned.

>   agent =3D Mechanize.new
>   page =3D agent.get(ds:url) #I want to give it the url from the table
>   title =3D agent.page.title.strip #get the title from website
>   #write title to database table stats
>    #Havent thgought of this yet :)

http://datamapper.org/docs/create_and_destroy.html

> end
>=20
>=20
> Any suggestions are apreciated!
>=20
> Br
> cristian
>=20
> --=20
> Posted via http://www.ruby-forum.com/.
>=20




Panagiotis (atmosx) Atmatzidis

email:	atma@convalesco.org
URL:	http://www.convalesco.org
GnuPG ID: 0x1A7BFEC5
gpg --keyserver pgp.mit.edu --recv-keys 1A7BFEC5
--
The wise man said: "Never argue with an idiot. They bring you down to =
their level and beat you with experience."



In This Thread