壁紙写真でスクリーンセーバ
は写真をScrapboxで管理している (Scrapboxで写真を管理する)
1ページに1枚貼っており、綺麗なものには「壁紙」というタグを書いている
エクスポートしたJSONファイルを使っている (プライベート写真が多いので写真自体は非公開)
kabegami.rb
require 'json'
data = JSON.parse(File.read('/Users/masui/ScrapboxData/masui-photos.json'))
data['pages'].each { |page|
title = page['title']
found = false
url = ''
page['lines'].each { |line|
if line =~ /(http(s)?:\S+amazonaws\S+\/[0-9a-fA-F]{32}\.jpg)/i
url = $1
end
if line =~ /(#壁紙|\[壁紙\])/
found = true
end
}
if found && url != ''
url.sub!(/http:\/\/masui.org.s3.amazonaws.com/,"https://s3-ap-northeast-1.amazonaws.com/masui.org")
puts "[#{url}]"
end
}
このコマンドをターミナルから動かすとURLのリストが生成される
% wget -q -O - https://scrapbox.io/api/code/masui/壁紙写真でスクリーンセーバ/kabegami.rb | ruby
kabegami.rb
というファイルを作る必要がない データはここに貼る
GyaTVでスクリーンセーバになる