2017-11-18 ruby open-uri

RubyでWeb上からファイルをダウンロードする:openメソッドのお勉強

別サイトで運用しているLINEBLOGの記事をダウンロードし、そこから更新情報を抜き出して自分のホームページに表示したかったのでRubyのお勉強を兼ねて試してみた。

わかりやすく解説してあるページを見つけたので >>> http://uxmilk.jp/22830

まずは、サンプル通りにコードを書いてquickrun

openメソッドのサンプル

require 'open-uri'
url = 'https://lineblog.me/minorugh'
open(url) do |file|
  puts file.read
end
require 'open-uri'
url = 'https://lineblog.me/minorugh'
file=open(url) 
  puts file.read

メタデータの取得を試す

取得したファイルからメタデータを取得する関数が使えるとのことで試す

require 'open-uri'
url = 'https://lineblog.me/minorugh'
file = open(url)
puts file.last_modified

ファイルをダウンロードして保存する

require 'open-uri'
url = 'https://lineblog.me/minorugh'

open(url) do |file|
 open("lineblog.html", "w+b") do |out|
 out.write(file.read)  
 end
end
## getfile.rb

require 'open-uri'
url = 'https://lineblog.me/minorugh'

file = open(url)
open("lineblog.html", "w+b") do |out|
out.write(file.read)
end

# backup
require "date"
d = Date.today
str = d.strftime("backup/%Y%m%d_lineblog.html")

require "fileutils"
FileUtils.cp("lineblog.html", str)    # コピー

更新情報に反映させる

## maikefile

a.out:getfile upftp

getfile:
	ruby getfile.rb
upftp:
	perl ~/Dropbox/Web/GH/upftp/upftp.pl

参考サイト

RubyでWeb上からファイルをダウンロードする:open-uri

UpFtp-結城浩

2017-11-18 ruby open-uri