2008/08/26
「hrkt0115311の、教えて習うRuby教室。」Vol.69 ~「あの英文、とりあえず全部リンク貼っときました。」の巻~
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 〜 Ruby始めました 〜 「hrkt0115311の、教えて習うRuby教室。」Vol.69 ━━━━「あの英文、とりあえず全部リンク貼っときました。」の巻 おはようございます。hrkt0115311です。毎回メルマガを読んでいただきありがとう ございます! LDRでRSSを登録して下さっている方もありがとうございます。 バックナンバーをご覧下さっている方にも感謝します。励みになります! http://reader.livedoor.com/about/http://archive.mag2.com/0000267290/rss10.xml 今回は、英文を読み込ませて、全部に対してひたすら英語辞典への 検索結果URLを貼り付けたHTMLを出力するスクリプトを書いてみました。 それでは本日のメルマガ始めます。 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ○目次 ・ 「あの英文、とりあえず全部リンク貼っときました。」(出力結果) ・ 「あの英文、とりあえず全部リンク貼っときました。」(解説) ・ 「あの英文、とりあえず全部リンク貼っときました。」(スクリプト) ・ 編集後記 ━━━━━━━━━━━━━━━━━━━━━━━━━━━免責事項 ソースコードは、発行者が実際に動かし、構文チェックなどもしていますが ご利用になられて万一損害が生じた場合、保証することができません。 ご利用になられる際は、ご自身でご確認になられた上で、お試し下さい。 ━━━━━━━━━━━━━━━━━━━━Rubyの導入方法について OSは何をお使いですか? LinuxでもMacOSでもWindowsでも、Rubyの 公式ページでインストール方法が説明されています。 ○Ruby Install Guide http://preview.tinyurl.com/4ghc3o ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ○「あの英文、とりあえず全部リンク貼っときました。」(出力結果) プロジェクト・グーテンベルグから『不思議の国のアリス』をお借りして HTMLにしてみました。以下が出力結果です。2MBあります。ファイルサイズが 大きいのでご注意願います。 http://book0115311.web.fc2.com/ruby/e2h.html ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ○「あの英文、とりあえず全部リンク貼っときました。」(解説) メルマガ17号で、英文を渡すと検索結果のURLに整形するものを紹介 したことがあると思います。 http://archive.mag2.com/0000267290/20080705070000000.html これができるなら、元の英文のレイアウトを保持して、単語ごとに 別窓が開くようにHTMLを出力してあげたら、辞書引く手間が省ける かなぁと考えました。数字とか記号とか検索しなくていいものまで 検索対象にしてしまうのはご愛敬なんですが、「本一冊まるまる下調べ しておいて」というお願いは無理でも、リンクはるくらいなら Rubyにお願いしてやってもらうことができるんだなぁと、今更ながら 気がつきました……。 それにしても140kbのデータが2MBになるとは。 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ○「あの英文、とりあえず全部リンク貼っときました。」(スクリプト) =begin 1.ファイルで読み込んだ英文を、すべて英辞郎へリンク貼った形にできるスクリプト 2.数字や記号も気にせずリンク貼ってしまう、おおざっぱな子です =end $KCODE = "UTF-8" require "jcode" txt = File.read('eigo.txt') w = Array.new txt.each do |i| w << i.scan(/\w+|[^\s\w]+/) w << i.scan(/\n/) end w.flatten! w2 = Array.new w.each do |i| w2 << %Q|<a href="http://eow.alc.co.jp/#{i}/UTF-8" target="_blank">#{i}</a> | if i != "\n" w2 << "</br>" if i == "\n" end #puts w2.to_s #ファイル出力 File.open("e2h.html", "w"){|f| STDOUT.reopen(f) } puts <<E <html><head> <meta http-equiv="Content-Type" content="text/html; charset=URF-8"> <title>あの英文、とりあえず全部リンク貼っときました。</title></head> <body bgcolor="#FFFFCC"> <p> <h1>あの英文、とりあえず全部リンク貼っときました。</h1> #{w2.to_s} </p> <p><br><br><center>謝辞</br>このHTMLファイルはRubyスクリプトにより生成されました。</br> 生成するにあたり、プロジェクト・グーテンベルグのコンテンツを使わせていただきました。 ここに感謝とともに出典を明記します。 </br><a href = "http://www.gutenberg.org/etext/11" target="_blank">http://www.gutenberg.org/etext/11</a> / <a href = "http://www.gutenberg.org/files/11/11-h/11-h.htm" target="_blank"> http://www.gutenberg.org/files/11/11-h/11-h.htm</a></center></p> </body></html> E ■ 編集後記 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 「hrkt0115311の、教えて習うRuby教室。」を最後までお読みいただき ありがとうございます。いかがでしたか? 秋雨というか、肌寒い陽気が続いています。みなさんは、折りたたみ傘と 普通の長い傘と、どちらを好まれますか? 視界が確保できるので、私は 駅の売店などで売られているビニール傘が好きです。あの素材で折りたためて さびない骨で作ってあるといいんだけどなぁ。なかなか見かけないのです。 説明不足・分かりにくい点・私の理解の誤りなど、お気づきになられた点があれば、 お気軽にご意見・ご感想をお寄せ下さい。 enjoy.ruby@gmail.com にて、 メルマガ読者の皆さまからのフィードバックをお待ちしています。 それではまた、次号でお会いしましょう。 ■ いただいた反響について ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 「こんな仕組み作れないかな」とか「説明不足で分からないよ」といった ご指摘をお寄せいただけると嬉しいです。みなさまの声で、メルマガを 育てていただければ嬉しいです。また、メルマガで、頂戴したメールの 一部を紹介させていただく可能性があります。差し支えがある場合は 「発行者のhtkt0115311に読んで欲しいだけで、メルマガには掲載しないで」 とお書きいただければ幸いです。 ■ 転送や再配布について ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ blogなどでご紹介いただく際は、 http://www.mag2.com/m/0000267290.html などを並記していただき、私の書いた文章であることが分かる形に していただけると幸いです。またメルマガの転送については、転送者さんと 転送したメルマガを受け取られた方が迷惑でない範囲であれば歓迎します。 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ メールマガジン「hrkt0115311の、教えて習うRuby教室。」 ○発行者 htkt0115311 ○発行システム 『まぐまぐ!』 http://www.mag2.com/ ○配信中止はこちら http://www.mag2.com/m/0000267290.html ○公式サイト http://enjoy-programming.g.hatena.ne.jp/hrkt0115311/ ○日記 http://d.hatena.ne.jp/hrkt0115311/ ○Twitter https://twitter.com/hrkt0115311 ○お問い合わせ enjoy.ruby@gmail.com ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
-
2009/08/27 「hrkt0115311の、迷えるプログラミング教室」Vol.91 ~htmlSQLで「みそ録」作ったよ! の巻~
-
2009/07/19 「hrkt0115311の、迷えるプログラミング教室」Vol.90 ~URL指定すると、はてな記法を返すスクリプトの巻~
-
2009/07/13 「hrkt0115311の、迷えるプログラミング教室」Vol.89 ~XML処理するTwitterまとめスクリプト改編の巻~
-
2009/07/13 「hrkt0115311の、迷えるプログラミング教室」Vol.89 ~XML処理するTwitterまとめスクリプト改編の巻~
-
2009/04/25 「hrkt0115311の、迷えるプログラミング教室」Vol.88 ~HTMLの部分置き換えスクリプトの巻~



