不定期日記

J2千葉観戦記, ライブの感想を中心とした備忘録

2010-08-15 (Sun) [長年日記]

_ [Web] フォト蔵の写真をまとめてダウンロードするスクリプト

  • 引数にアルバムのRSSのURIを指定して実行します。all.xml を指定しても良い。
  • ダウンロードに wget を使用しています。
  • size を指定すると、すべて指定したサイズでダウンロードできます。
  • 動画には対応していません。動画があると動画のサムネールが保存されます。
  • 将来に渡って動く保証はありませんが、今のところ動いています。
#!/usr/local/bin/ruby
#
# Usage: photozou.rb http://photozou.jp/feed/photo_list/0000/0000000.xml

require 'rss/2.0'
require 'net/http'

size = ""	# Get original size
#size = "?size=120"

$proxy_addr = nil
$proxy_port = nil

uri_rss = URI::parse(ARGV[0])
body = ''
Net::HTTP.version_1_2
Net::HTTP::Proxy($proxy_addr, $proxy_port).start(uri_rss.host, uri_rss.port) do |http|
	response = http.get(uri_rss.request_uri)
	body = response.body
end

rss = RSS::Parser.parse(body, true)

for item in rss.items do
	photo_id = item.link.sub(/^.*\/([^\/]*$)/, '\1')
	uri_thumbnail = URI::parse(item.description.sub(/^.*<img src="([^"]+)".*$/, '\1'))
	uri_photo = "http://#{uri_thumbnail.host}/bin/photo/#{photo_id}/org.bin#{size}"
	filename = "#{photo_id}.jpg"
	system "wget \"#{uri_photo}\" -O #{filename}"

	sleep 5
end

2001|01|07|08|09|10|11|12|
2002|01|02|03|
2003|03|04|05|06|07|08|09|10|11|12|
2004|01|02|03|04|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|08|09|10|11|12|
2016|01|02|03|04|05|06|08|09|10|11|12|
2017|03|05|06|09|11|12|
2018|05|08|10|11|
2020|07|