ローカルwiki参照用にwikipediaへのリンクと概要抜粋を作る雑品。
ただし、すごくアルファ版。
User-Agentは適切なものをセットしてくださいね。
$ wikipedia.rb 雑賀衆 雑賀衆 - Wikipedia - [[wikipedia>https://ja.wikipedia.org/wiki/%E9%9B%91%E8%B3%80%E8%A1%86]] 雑賀衆(さいかしゅう)は、中世の日本に存在した鉄砲傭兵・地侍集団の一つである。また、史料に見られる「惣国」と同じと考えられているため、「紀州惣国」もしくは「雑賀惣国」とも呼ばれている。雑賀衆は紀伊国北西部(現在の和歌山市及び海南市の一部)の「雑賀荘」「十ヶ郷」「中郷(中川郷)」「南郷(三上郷)」「宮郷(社家郷)」の五つの地域(五組・五搦などという)の地侍達で構成されていた。高い軍事力を持った傭兵集団としても活躍し、鉄砲伝来以降は、数千挺もの鉄砲で武装した。また海運や貿易も営んでいた。「さいが」と読むのは誤読である。 $
&ref(): File not found: "wikipedia.rb" at page "Googler+wikipedia";
#!/usr/bin/ruby -EUTF-8 require 'nokogiri' require 'open-uri' class String def __search r = `googler --nocolor --np \"#{self}\"` s = r.split("\n") ss = [] ii = 0 (0..s.length-1).each{|i| s[i].gsub!(/^(\ | )+/,'') s[i].gsub!(/[\r\n]/,'') #s[i].gsub!(/\t/,' ') if s[i] =~ /^$/ ii += 1 else if ss[ii] == nil ss[ii] = [] ss[ii].push(s[i]) else ss[ii].push(s[i]) end end } ss end def _getPedia r = nil s = [] open(self, "UserAgent" => "Ruby_Manual_Connector/0.1a"){|f| f.each_line{|line| s.push(line) } r = s.join("") } r end def _analPedia r = nil s = [] doc = Nokogiri.HTML(self) doc.xpath("//div[@id='mw-content-text']").each{|d| s.push(d.inner_text) } r = s.join("") s = [] r.split("\n").each{|x| break if x == "" s.push(x) } r = s.join("") end end ############# ARGV.each{|q| q2 = "#{q} site:https://ja.wikipedia.org/wiki/" q2.__search.each{|x| next if x[0] !~ /#{q}/ || x[1] !~ /wikipedia/ url = x[1].clone title = x[0].gsub(/^\d{1,3}\ /,'') answer = url._getPedia._analPedia print <<EOM #{title} - [[wikipedia>#{url}]] #{answer} EOM } }