forked from wezm/wezm.net
Script to add short url to article meta data
This commit is contained in:
parent
e51839c7dc
commit
3834063020
1 changed files with 35 additions and 0 deletions
35
script/bitly
Executable file
35
script/bitly
Executable file
|
@ -0,0 +1,35 @@
|
||||||
|
#!/usr/bin/env ruby
|
||||||
|
|
||||||
|
require 'pathname'
|
||||||
|
$:.unshift (Pathname(__FILE__).parent.parent + 'lib').to_s
|
||||||
|
|
||||||
|
require 'nanoc3'
|
||||||
|
require 'articles'
|
||||||
|
require 'bitly'
|
||||||
|
|
||||||
|
include Nanoc3::Helpers::Blogging
|
||||||
|
|
||||||
|
site = Nanoc3::Site.new(Pathname(__FILE__).parent.parent.to_s)
|
||||||
|
|
||||||
|
Bitly.use_api_version_3
|
||||||
|
bitly = Bitly.new('wezm', 'R_f2bfdace56c886671086eb0c8acb9ce7')
|
||||||
|
|
||||||
|
site.load_data
|
||||||
|
site.items.select { |item| item[:kind] == 'article' }.each do |article|
|
||||||
|
meta = YAML.load_file(article[:meta_filename]) || {}
|
||||||
|
url = site.config[:base_url] + article.path
|
||||||
|
unless meta['short_url']
|
||||||
|
begin
|
||||||
|
u = bitly.shorten(url)
|
||||||
|
meta['short_url'] = u.short_url
|
||||||
|
rescue BitlyError
|
||||||
|
puts "BitlyError"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
# Write the meta data back out
|
||||||
|
File.open(article[:meta_filename], 'w') do |file|
|
||||||
|
YAML.dump(meta, file)
|
||||||
|
end
|
||||||
|
puts "#{url} => #{meta['short_url']}"
|
||||||
|
end
|
Loading…
Reference in a new issue