タグ

ブックマーク / blog.livedoor.jp/utility1 (28)

  • [Perl初歩] Plagger に挑戦(メモ1) : utlog

    初心者なので、ごく当たり前のこともメモっていきますよっと。 何度か Docker でコンテナを run したり、rm したりしていて、あるとき急にプロンプトが真っ黒になり、ユーザー名とかでるであろう部分にもなにもでなくなったんですね。$とか#とかも無く。 でも、pwd とか、ls とかのコマンドは通る。なんだろうなあと思ってたわけです。 じゃあってことで、emacs コマンドとかしてみると、以下のエラー。 "emacs: standard input is not a tty" なんだろう、と思ってググってもなかなか見つからず。 結局、そのままズバリ答えが上のエラーに書いてあるわけですが、そもそもプロンプト?が tty じゃないですよと。 要するに docker のインスタンスを run するときに、 -t オプションを付けてなかったので、tty が有効じゃないよ、と。 tty がなんなの

    [Perl初歩] Plagger に挑戦(メモ1) : utlog
    utility1
    utility1 2015/11/05
    utlog : [Perl初歩] Plagger に挑戦(メモ1)
  • [Perl初歩] Plagger に挑戦(-) : utlog

    番組の途中ですが、インスタンスが再起動かなにかしたかで、Docker などの変更内容がすべてリセットされたので、最初からやり直すよ\(^o^)/ ブログに書いててよかったー。

    [Perl初歩] Plagger に挑戦(-) : utlog
    utility1
    utility1 2015/10/27
    utlog : [Perl初歩] Plagger に挑戦(-)
  • [Perl初歩] Plagger に挑戦(2) : utlog

    Plagger というか、Docker ですけど。 Plagger で作った RSS はフィードリーダーとかで、外から見れるようにする必要があるよね、たぶん。 なので、Google Compute Engine かつ、Docker という環境で、それをどうするのか、をちょっと調べる。 ■参考にした記事 ・Google Compute Engine 側の設定。 http://deferloader.blog.uhuru.co.jp/?p=4678 ・Docker 側の設定。 http://blog.cloudninja.asia/?p=517 ・コンテナ作成時にポートの設定が必要らしいので、再作成するために、これまでいじったコンテナをイメージ化。 http://thinkit.co.jp/story/2015/09/01/6377 ・コンテナ起動。 $ sudo docker run -t

    [Perl初歩] Plagger に挑戦(2) : utlog
    utility1
    utility1 2015/10/16
    utlog : [Perl初歩] Plagger に挑戦(2)
  • [Perl初歩] Plagger に挑戦(1) : utlog

    久しぶりに書きますが、Perl たまにやったりします。 Yahoo! Pipes がなくなってしまったので、みんなどうしてるんだろうなあと思ったのですが、通知とかサービス間連携とかは、IFTTT 使ってる方が多そうですね。 それはそれとして、私の場合 RSS から全文を持ってきたり、さらにその中身をいじって、別の RSS として、配信してみたりしたかったので、2015年に Plagger にチャレンジしてみました。 今回の最終目標は、「はてブのお気に入りの新着をGmailに送信」でまずは試してみました。 以下、進める中で詰まったところを思い出しつつ、箇条書きで書きます。忘れていく。。 ■環境 そもそも Perl の環境がちゃんとしてないので、Plagger インストールに時間がかかると思ったので、こちらを参考に Docker でやってしまおうと思いました。 http://blog.zonc

    [Perl初歩] Plagger に挑戦(1) : utlog
    utility1
    utility1 2015/10/15
    utlog : [Perl初歩] Plagger に挑戦(1)
  • グリー株式会社を退社します。 : utlog

    題 Facebook のほうでは、すでに書いていましたが、2014年8月31日をもってグリー株式会社を退社します。入社が2012年9月3日なので、ジャスト2年でした。 次も9月1日からで決まっております、例によってインターネット企業です。 #「退社」って、「帰宅」って意味でも使ったりするから、ややこしい。 ■余談 前回は、転職人生で初めてだったために、なにやらよくわからないまま、テンション上がってエントリーを書いてしまいましたが、私の場合、人と、直接の関係者しか意味わからないですね。 よくよく考えたら、どこの誰ともわからんヤツが「どこを辞めた」とか、「どこに入った」とかは重要じゃなくて、「なにをした」、「なにがどうなった」とかをアウトプットしていくべきなんだろうなあと思った次第です。 なので、グリーについては入社を書いていたので、セットとなる退社は書かねばならないだろうということで

    グリー株式会社を退社します。 : utlog
    utility1
    utility1 2014/08/30
    utlog : グリー株式会社を退社します。
  • [Perl初歩]CPANモジュール5:JSON : utlog

    くー、分かるようで分かってない感がする。 JSON です。メモがすげえ多い。 これ自分であとで読んで分かるんだろうかとちょっと不安になってきております。 ※前半部分は前回と同じ use strict; use warnings; use URI; use HTTP::Request; use LWP::UserAgent; use JSON; use Data::Dumper; #BASIC 認証の ID とパスをスカラーに入れる my $user_id = 'メアド'; my $key = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'; #URI にベースになる URL を設定してインスタンス起動 #$uri=「URI(BingAPI)くん」 my $uri = URI ->new('https://api.datamarket.azure.com/Bing/Sea

    [Perl初歩]CPANモジュール5:JSON : utlog
    utility1
    utility1 2013/11/13
    utlog : [Perl初歩]CPANモジュール5:JSON
  • [Perl初歩]CPANモジュール4:URI : utlog

    Bing API から希望の画像のURLを持って来よう、がお題。 URI を使って、クエリー付きURLを作るのと、そこへアクセスするために、BASIC認証を通るようにする。 参考書はエロ画像を集めよう! なので、Adult オフでしたが、とりあえず、私は「ネコ」で。 use strict; use warnings; use URI; use HTTP::Request; use LWP::UserAgent; #BASIC 認証の ID とパスをスカラーに入れる my $user_id = 'hoge@example.com'; my $key = 'XXXXXXXXXXXXXXXXXXX'; #URI にベースになる URL を設定してインスタンス起動 #$uri=「URI(BingAPI)くん」 my $uri = URI ->new('https://api.datamarket.

    [Perl初歩]CPANモジュール4:URI : utlog
    utility1
    utility1 2013/10/30
    utlog : [Perl初歩]CPANモジュール4:URI
  • [Perl初歩]CPANモジュール3:LWP::UserAgent : utlog

    LWP::UserAgent を使ってみてます。 なんとなく、それっぽいことをやるようになってきましたね。 急に難しくなってきましたよ。 正規表現も入ってきて、メモがだいぶ増加。 use strict; use warnings; #LWP::UserAgent 使う宣言 use LWP::UserAgent; #新しいインスタンス #インスタンスってなんぞ #このモジュールの処理を担当する「LWP::UserAgentくん」を作るってイメージでいいのだろうか。 my $ua = LWP::UserAgent->new(); #インスタンスなので、「LWP::UserAgentくん」を直接 print しようとしても上手くいかない。 #なにか渡してやってもらう。 #ダウンロードステータスを表示 #LWP::UserAgent の show_progress を使う。 #「LWP::User

    [Perl初歩]CPANモジュール3:LWP::UserAgent : utlog
    utility1
    utility1 2013/10/29
    utlog : [Perl初歩]CPANモジュール3:LWP::UserAgent
  • [Perl初歩]CPANモジュール2:List::Util : utlog

    「そういうところだよ!」と苦言を呈されましたが、止めるとさらに元も子もないので続けております。 今回は List::Utill。 use strict; use warnings; #List::Util の shuffle 使う宣言 use List::Util qw/shuffle/; my @array = qw/A B C D E F G/; #shuffle() に渡された配列をシャッフル。 my @new_array = shuffle(@array); #@new_array の値に ,を付けて表示。最後に改行。 print join(',', @new_array) . "\n"; 次はLWP::UserAgent。 参考書はこちら。 Perlについて語ろうposted with amazlet at 13.10.04和田裕介 (2013-03-13) 売り上げランキング:

    [Perl初歩]CPANモジュール2:List::Util : utlog
    utility1
    utility1 2013/10/22
    utlog : [Perl初歩]CPANモジュール2:List::Util
  • [Perl初歩]CPANモジュールを使ってみる1 : utlog

    はい、やっとそれっぽいことになってきました。 参考書では最初にお試しで使ってみるのが、Acme::Oppai ということだそうで、とりあえず、使ってみましたが、あーこうなるのか、なるほどと思いました。 ただ、Windows の cmd そのままだと文字コードが合ってなくて、なんだかわからないことになってるという。。まあ、エラーじゃなくて、動いてるんでいいんですが。 ところで、CPAN のインストールですが、Active Perl の場合、cpan コマンド打つと、セットアップされていない場合は、勝手にインストールとかしてくれました。 で、個別のモジュールのインストールは、cpan install モジュール名 でいけました。--sudo もあるようですが、ひとまず自分の環境だけでいいかなと。 use strict; use warnings; use Acme::Oppai; print

    [Perl初歩]CPANモジュールを使ってみる1 : utlog
    utility1
    utility1 2013/10/20
    utlog : [Perl初歩]CPANモジュールを使ってみる1
  • [Perl初歩]お手本を写経 : utlog

    参考書の内容をそのまま書いてます。 これまでやったことを踏まえつつ、サブルーチンとか入ってて、なかなかステップアップな内容。 完全に把握できてるわけじゃないですよ。。 元々のコメント以外に、いろいろコメント付け加えてます。 use strict; use warnings; #スカラー my $title = "MOTHER2 で学ぶ Perl 入門"; #リスト my @names = qw(Boy Girl Friend Friend2 Dog Food Thing); #標準出力 print "Nani ni suru?\n"; #関数 #第一引数, (カンマと半角スペース)で@namesをつなげて表示 print join ( ', ', @names ) . "\n"; #標準入力 my $name = ; #関数 #対象の文字列(この場合入力された文字列)から末尾の改行文字を削

    [Perl初歩]お手本を写経 : utlog
    utility1
    utility1 2013/10/17
    utlog : [Perl初歩]お手本を写経
  • [Perl初歩]テキスト操作おさらい : utlog

    ここまでのおさらいをざっと。 あとで、自分でもここを見返す用に。 #振り返り #スカラーを作るのは $hoge = ('hoge'); my $animal = ('ネコ'); print "I like $animal!\n"; #配列を作るのは @hoge = ('foo','bar',baz'); or qw(foo baa baz); my @animals = qw(ネコ イヌ トリ); #配列の1要素を取得するには $hoge[0]; print "I like $animals[1]!\n"; #配列から先頭の要素をトル my $shift_01 = shift @animals; for my $animal(@animals) { print "-$animal\n"; }; #配列から末尾の要素をトル my $pop_01 = pop @animals; for my

    [Perl初歩]テキスト操作おさらい : utlog
    utility1
    utility1 2013/10/16
    utlog : [Perl初歩]テキスト操作おさらい
  • [Perl初歩]ハッシュの操作 : utlog

    まだまだしつこく、初歩のテキストの操作やってますよ。 ハッシュの操作。リファレンスで扱ったほうが楽なんですかね? #ハッシュの操作 #要素の表示 my %zoo = ( north_gate => 'パンダ', south_gate => 'ゾウ', east_gate => 'ライオン', ); for my $gate(keys %zoo){ print"$zoo{$gate} in $gate\n"; }; #key と value を追加 %zoo->{west_gate} = 'ペンギン'; for my $gate(keys %zoo){ print"ペンギン追加:$zoo{$gate} in $gate\n"; }; #ハッシュリファレンスで my $zoo2 = { north_gate => 'パンダ', south_gate => 'ゾウ', east_gate =>

    [Perl初歩]ハッシュの操作 : utlog
    utility1
    utility1 2013/10/13
    utlog : [Perl初歩]ハッシュの操作
  • [Perl初歩]配列の操作 : utlog

    ひとまずお手通りに書きます。 そのとき思ったこととかメモも全部コメントに書いてしまう荒業がスタイルになってきた。 #配列の操作 #ひとまず手通りに。 my @foods = qw/ラーメン 寿司 カレー/; my $food_01 = shift @foods; #先頭の要素を取り出す(配列から無くなる。箱から取り出すイメージ?) my $food_02 = pop @foods; #末尾の要素を取り出す(外す) push @foods, "スパゲティ"; #末尾に要素を追加 unshift @foods, "ピザ"; #先頭に要素を追加 #join=第1引数(この場合、半角スペース)で配列の要素を文字列としてつなげる print join ' ', @foods; print "\n"; #配列の数を知る my @foods = qw/ラーメン 寿司 カレー/; my $length

    [Perl初歩]配列の操作 : utlog
    utility1
    utility1 2013/10/11
    utlog : [Perl初歩]配列の操作
  • [Perl初歩]リファレンス、その2 : utlog

    その1からの続き。 ()[]{}の使い分けが、いまいち明確にわかってない感じ。 そのうち慣れてくるだろうか。 あと、完全に自分のせいだけど、namesとかnameとか、分かりづらいw こういう命名のセンスないなあ。意味からつけようと思うと、混乱する名前になるっていう #先に@配列を定義 #ハッシュの中に入れる my @nick = ('NA','utility1'); my %names = ( first => 'NNN', family => 'AAA', nick => \@nick, #\(円マーク、バックスラッシュ)でリファレンスになる ); for my $nick(@{$names{nick}}){ print "$nick\n"; }; #qw=半角スペースで配列にしてくれる。 my @nick = qw(NA utility1); my %names = ( first

    [Perl初歩]リファレンス、その2 : utlog
    utility1
    utility1 2013/10/10
    utlog : [Perl初歩]リファレンス、その2
  • [Perl初歩]シングルクォーテーションとダブルクォーテーション : utlog

    なかなか進みません。 そういえば、なんとなくで流しちゃったけど、文字列の表現で「'」(シングルクォーテーション)と「"」(ダブルクォーテーション)があるのですが、ここの使い分けできてなかったですね。 シングル→そのまま文字列として解釈される。 my @names = ('NNN', 'AAA','NA'); print '$names[0]\n'; 出力結果:$names[0]\n ダブル→変数は変数として解釈される。 my @names = ('NNN', 'AAA','NA'); print "$names[0]\n"; 出力結果:NNN(と改行) なるほどですねー。 引き続き、参考書はこちら。

    [Perl初歩]シングルクォーテーションとダブルクォーテーション : utlog
    utility1
    utility1 2013/10/09
    utlog : [Perl初歩]シングルクォーテーションとダブルクォーテーション
  • [Perl初歩]そういえば、環境のこと : utlog

    書くの忘れてましたが、Perl の環境は、Windows なので、Active Perl で。 他にも Windows用はあると思うんですが、歴史長いんで安定してそう。 Windows7 64bit なので、以下をインストール。 昔はもっと苦労した気もするんですが、PATH も通って超簡単でした。 http://www.activestate.com/activeperl/downloads 5.18.1.1800 Windows (64-bit, x64) で、スクリプト体は、ローカルのテキストエディタ(Tepa editor)にちまちま書いて、ローカルで実行。 今の目標は Twitter bot ですが、もう少し形が見えたら、どこかサーバに上げようと思ってます。 ロリポップは借りてるので、あそこで cron に仕込めばいいのかなーとか思ってます。 規約的にダメな可能性ありますが。まあ

    [Perl初歩]そういえば、環境のこと : utlog
    utility1
    utility1 2013/10/08
    utlog : [Perl初歩]そういえば、環境のこと
  • [Perl初歩]リファレンス、その1 : utlog

    次は、リファレンス(参照)。 まだ理解甘い。 とりあえず、その1 #---------------------- #リファレンス #ハッシュの中に、配列があるけど、そのまま()だとうまくいかない #()じゃなくて、[]で配列を囲むと、リファレンス(参照)になる #@{$names{nick}} でリファレンスを配列に戻す(デリファレンス) #@names = ("NA", "utility1")にするってこと。 #「print で $nick を表示する」を for で繰り返す。 my %names = ( first => "NNN", family => "AAA", nick => ["NA", "utility1"], #リファレンス ); for my $nick($names{nick}) { #←リファレンスを直接引くと、うまくいかない。 print "$nick\n"; }

    [Perl初歩]リファレンス、その1 : utlog
    utility1
    utility1 2013/10/07
    utlog : [Perl初歩]リファレンス、その1
  • [Perl初歩]スカラー、配列、ハッシュ : utlog

    スカラー、配列、ハッシュ。 基のキだから毎回ここからスタート。何度もやってる気がするけど、まだ身につかない。。 例のを見ながら、一応ここまで書いてみた。 use strict; use warnings; #---------------------- #スカラー #$name にNAを入れる #print 関数で $name を表示する my $name = ("NA"); print "$name\n"; #---------------------- #配列(@Array) #@names に複数の値を入れる。 #print 関数で、@names の一番最初の値を表示する。 my @names = ("NNN", "AAA","NA"); print "$names[0]\n"; #「@names から1つずつ値を取ってきて、$nameに入れて、print で表示する」を for

    [Perl初歩]スカラー、配列、ハッシュ : utlog
    utility1
    utility1 2013/10/04
    utlog : [Perl初歩]スカラー、配列、ハッシュ
  • やっぱり Perl やってみる : utlog

    いつもいつも、プログラムをやってみようと思いつつ、そして、少し始めてみても、毎回途中で止めちゃって、なにも身につかないんだけども、また一念発起、やってみようと思います。 というのも、こちらのエントリに感銘を受けました。 非エンジニアが、エンジニアのカンファレンスでLTした日 #yapcasia 正直、業界は長いですが、スキルといえるスキルがあまりないことが不安になってきました。 大きなサービスにコミットできなくても、なにが起きてるか理解したい、読めるようになりたい、これはずっと思ってました。ということで、気でやらなければ。 で、書き残しておかないと忘れるので、ブログを新しく立てようかとも思ったんだけども、カテゴリ分けるだけでいい気がしたので、一旦これで行きます。多くなったら、エクスポートで別にしましょ。多くなればね。 ということで、まず、いつも何故途中で止めてしまうのか考えてみた。 ・作

    やっぱり Perl やってみる : utlog
    utility1
    utility1 2013/10/03
    utlog : やっぱり Perl やってみる