Sha256: 8c3e7842767ed5c7d8050ad7bfab6c0115be342bcb3e7e0632ba3d9f68e913c3
Contents?: true
Size: 888 Bytes
Versions: 2
Compression:
Stored size: 888 Bytes
Contents
#! /usr/bin/env ruby require "open-uri" require "optparse" require "tefil.rb" require 'nokogiri' require 'pp' require 'uri' class UrlTitle < Tefil::TextFilterBase def initialize(options = {}) super(options) end def process_stream(in_io, out_io) in_io.each do |line| URI.extract(line).each do |uri| begin html = open(uri) doc = Nokogiri::HTML.parse(html) line.gsub!(uri, "[#{doc.title}](#{uri})") rescue #rescue Errno::ENOENT #do nothing end end out_io.puts line end end end ## option analysis options = {} op = OptionParser.new op.banner = [ "Usage: #{File.basename("#{__FILE__}")} [options]", ].join("\n") op.on("-o" , "--overwrite" , "Overwrite"){ options[:overwrite] = true} op.parse!(ARGV) options[:overwrite] ||= false ut = UrlTitle.new(options) ut.filter(ARGV)
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
madowu-0.0.8 | bin/urltitle |
madowu-0.0.7 | bin/urltitle |