File copy

Hi,
I am facing a problem to copy the file.

I am getting path of the file like this
"http://photos-d.ak.fbcdn.net/photos-ak-snc1/v2574/90/75/704291251/457931_8289306.jpg".
I want to copy this file locally. I am trying to do this by using

File.copy(“http://photos-d.ak.fbcdn.net/photos-ak-snc1/v2574/90/75/704291251/457931_8289306.jpg","/images”);

I am getting an error
Invalid argument -
http://photos-d.ak.fbcdn.net/photos-ak-snc1/v2574/90/75/704291251/457931_8289306.jpg

I know that this is not a directory path. Is any one knows how to copy
this file?

Thanks
Tushar

···

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

I know that this is not a directory path. Is any one knows how to copy
this file?

Hi Gandhi,

Try this code which is mentioned in my blog

Regards,
P.Raveendran

···

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

Tushar Gandhi wrote:

Hi,
I am facing a problem to copy the file.

I am getting path of the file like this
"http://photos-d.ak.fbcdn.net/photos-ak-snc1/v2574/90/75/704291251/457931_8289306.jpg"\.
I want to copy this file locally. I am trying to do this by using

File.copy("http://photos-d.ak.fbcdn.net/photos-ak-snc1/v2574/90/75/704291251/457931_8289306.jpg","/images"\);

I am getting an error
Invalid argument -
http://photos-d.ak.fbcdn.net/photos-ak-snc1/v2574/90/75/704291251/457931_8289306.jpg

I know that this is not a directory path. Is any one knows how to copy
this file?

Thanks
Tushar

Why can't you use wget command in system or popen to download it ?
It's my suggestion

···

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

Hello Tushar,

Take a look at 'net/http', which is included in the ruby standard library:
http://ruby-doc.org/core-1.9/classes/Net/HTTP.html

For example the following code will download and save the ruby logo
off ruby-lang.org:

require 'net/http'
uri = URI.parse('http://www.ruby-lang.org/images/logo.gif'\)
Net::HTTP.get_response(uri) do |response|
  File.open('/tmp/logo.gif', 'w') {|f| f.write response.body }
end

There are various other ways to go about doing this - some of which
have been mentioned above - but 'net/http' is a good place to start.

solidarity,
lasitha.

···

On Mon, Apr 6, 2009 at 12:23 PM, Tushar Gandhi <gandhi.tush@gmail.com> wrote:

Hi,

File.copy("http://photos-d.ak.fbcdn.net/photos-ak-snc1/v2574/90/75/704291251/457931_8289306.jpg","/images&quot;\);

Hi,

I write the code like this
"
browser=Watir::IE.new
    browser.visible=false
    browser.goto(params[:photo_url])

    idx = 0

    # using the images collection, iterate through all of the images on
a page
    browser.images.each do |x|
      idx += 1
      # apparently the string accepted by the string method will not
allow variable substitution
      original_type= x.src[-4,4]
      type=".gif" if original_type == ".gif"
      type=".jpg" if original_type == ".jpg"
      type=".png"if original_type == ".png"
      type=".bmp" if original_type == ".bmp"
      type="jpeg" if original_type == ".jpeg"
      x.save('/images/')
    end
"
I am getting an error

" The AutoIt dll must be correctly registered for this feature to work
properly "
How to resolve this?
Thanks,
Tushar

jazzez ravi wrote:

···

I know that this is not a directory path. Is any one knows how to copy
this file?

Hi Gandhi,

Try this code which is mentioned in my blog

Save images from any URL – Raveendran

Regards,
P.Raveendran
http://raveendran.wordpress.com

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

Hi,
I went through this link
http://www.mail-archive.com/wtr-general@rubyforge.org/msg06628.html
and my dll registered successfully.
I changed my code like this
"
browser=Watir::IE.new
    browser.visible=true
    browser.goto(params[:photo_url])

    idx = 0

    # using the images collection, iterate through all of the images on
a page
    browser.images.each do |x|
      idx += 1
      # apparently the string accepted by the string method will not
allow variable substitution
      original_type= x.src[-4,4]
      type=".gif" if original_type == ".gif"
      type=".jpg" if original_type == ".jpg"
      type=".png"if original_type == ".png"
      type=".bmp" if original_type == ".bmp"
      type="jpeg" if original_type == ".jpeg"
      x.save('E:\Rails2.2\integrateSNS\public\images')
    end
"
It open a new tab and open that image and also open windows standard sve
pop up and hangs.
What should I do for this?

Thanks,
Tushar

···

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

Hi,

File.copy("http://photos-d.ak.fbcdn.net/photos-ak-snc1/v2574/90/75/704291251/457931_8289306.jpg","/images&quot;\);

Hello Tushar,

Take a look at 'net/http', which is included in the ruby standard library:
http://ruby-doc.org/core-1.9/classes/Net/HTTP.html

For example the following code will download and save the ruby logo
off ruby-lang.org:

Another possibility:

irb(main):001:0> require 'open-uri'
=> true
irb(main):003:0> open("http://www.ruby-lang.org/images/logo.gif&quot;\) do |f|
irb(main):004:1* File.open("logo.gif", "w"){|out| out.write f.read}
irb(main):005:1> end

Regards,

Jesus.

···

On Mon, Apr 6, 2009 at 5:45 PM, lasitha <lasitha.ranatunga@gmail.com> wrote:

On Mon, Apr 6, 2009 at 12:23 PM, Tushar Gandhi <gandhi.tush@gmail.com> wrote:

Tushar Gandhi wrote:

    browser.goto(params[:photo_url])

Hi Gandhi,

Oops. please try with separate .rb file first.

After that try to implement in rails.

Regards,
P.Raveendran

···

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

Hi Gandhi,

Please try to run the code in separate .rb file. Update here in case you
get any errors.

···

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