タグ

関連タグで絞り込む (414)

タグの絞り込みを解除

perlに関するwkbyshnbtkのブックマーク (1,087)

  • XML::Simpleで取得したデータが引き起こす文字化けの対処方法

    XML::Simpleを使ったPerlスクリプトの文字化けではまってしまったので、その備忘録です。 1.発生事象 Perlスクリプトで次のXMLファイルを読み込みます。ファイルの文字コードはUTF-8です。 <?xml version="1.0" encoding="utf-8"?> <list> <name>ほげ</name> </list> Perlスクリプト(CGI)のサンプルは次の通りです。ファイルの文字コードはUTF-8です。 #!/usr/bin/perl use strict; use CGI; use XML::Simple; my $q = new CGI; print $q->header(-charset=>'utf-8'); print $q->start_html; my $xml = XMLin('foo.xml'); my $name = $xml->{nam

    XML::Simpleで取得したデータが引き起こす文字化けの対処方法
    wkbyshnbtk
    wkbyshnbtk 2010/06/18
    cgiファイルで「use utf8;」したら文字化けしないけど、そんな話ではない?
  • masuda_twのOAuth対応に苦労したって話 | mattz.xii.jp

    増田ぶらうざとか増田viewerっつーのを作ったついでに@masuda_twという自動投稿するbotを動かしてたんだけど、OAuth対応しなきゃなぁ、ということでここ数日色々やってたんだけど、やっと解決したっぽいのでまとめ。 これまでは、Net::Twitterの2系を適当なディレクトリに展開してシンボリックリンクとか駆使してuse libしたりしてかなり無理矢理動かしてたんですが、そろそろもうちょっとちゃんとした環境にしようと思って、まずはローカルにCPANをインストールできるようにすんべと、otsune's FreeBSD memo :: ユーザー領域にCPANをインストールする方法とかさくらインターネットでCPAN - Charsbar::Noteとかを参考に色々やってどうにかCPANが使えるようになったので、Net::Twitterの3.13003をインストール。 次に実用! Pe

  • perlでテトリス! - download_takeshi’s diary

    偶然おもしろいモノを発見しました。コンソールで遊べるperlテトリスです。 スクリーンショットとってみました。 なんと、macbookのターミナル上でカラフルなテトリスが元気よく動いてます! それにしても、俺テトリス下手だな。。。 ってのはおいといて、ソースを見てみましょう。難読化されてます。 #!/usr/bin/perl $_='A=15; B=30; select(stdin); $|=1; select(stdout);$|=1; system "stty -echo -icanon eol \001"; for C(split(/\s/,"010.010.010.010 77.77 022.020.020 330.030.030 440.044.000 055.550.000 666.060.". "000")){D=0;for E(split(/\./,C)){F=0;for

    perlでテトリス! - download_takeshi’s diary
  • メール受信時に perl スクリプトを起動して自動処理させる方法 | perl/CGI | 阿部辰也のブログ――人生はひまつぶし。

    メールが届くと同時に何らかのアクションを起こすプログラムというのは、かなり作る機会の多い部類に入るかと思います。 ここ数年で特に多いものだと、ケータイ向けサイトの案件で、空メールを受信したら自動でユーザー登録用のフォームのアドレスを書いたメールを、空メール送信者に送る、みたいなものとか、ブログやSNSの日記なんかを、ケータイメールで投稿できるようにする処理とかですね。 そして王道の自動返信メールとか。 後、途中で飽きちゃったんですが、昔、送られてくるメールの内容を自分で学習して言葉を覚えて、文章を生成して返信する bot (人工無脳)を趣味で作ってたことがあります。 で、実際こういう「メールを受け取ったら何らかの処理を自動で行なう」という機能を実現するには、どうすれば良いかというと、 特定のメールアカウントにメールが届いた際に、何らかのプログラムが起動するように設定する そのプログラムを書

  • tarで7世代バックアップをするperlスクリプト

    となります。詳しくはmanコマンドなどを参照してください。 あと、除外したいファイルやディレクトリ(フォルダ)を指定したい場合は-Xオプションで除外リストファイルを指定するか–excludeオプションで個々のファイルやディレクトリを指定します。ここでは “-X”オプションについては解説しません。「–exclude」については軽く解説します。 –exclude PATTERN というフォーマットで正規表現やワイルドカードで指定することができます。 –exclude aaa.txt –-exclude bbb.txt –exclude ccc.dir という風に複数のオプションを付ければ複数のファイルやディレクトリを除外することができます。 で、それを踏まえて、昔書いたLinux用のtarで7世代バックアップを取るperlのスクリプトです。ブログに載せるにあたってちょっと修正しました。 cro

    tarで7世代バックアップをするperlスクリプト
  • http://idocsq.net/page/333

  • 自分の最近のCatalystのモデル部分の書き方 - D-6 [相変わらず根無し]

    自分の最近のCatalystのモデル部分の書き方 こちらのブログでなんか呼ばれた気がしたのでとりあえず書いてみた。 あくまで自分はどうしてるか、って話ですが、最近はCatalystでなんか書くときはこんな感じで使ってます。 色んな事がこの図に詰まっているので、箇条書きしてみる: Model::APIAPIオブジェクトを作成して、使用時にはModel::APIに対して`find()`というメソッドを使って実際のAPIオブジェクトを持ってくるSchema等はMyApp::Schemaに定義し、Model::APIのアトリビュートとして持っている。cacheも同等。これらの初期化引数は設定ファイルのModel::APIから取れるようにしておくCatalyst::Model::DBIC::Schemaは*使ってない*Model::APIではACCEPT_CONTEXTが呼ばれた時点で、もしまだ初

  • 1枚のスクリプトに全てをまとめてくれるApp::FatPacker - download_takeshi’s diary

    App::FatPackerとは、依存モジュールを全て1つのファイルに押し込んでパックしてくれるライブラリです。CPANにあります。 pack your dependencies onto your script file http://search.cpan.org/~mstrout/App-FatPacker-0.009001/ 依存モジュールを解決して1枚のスクリプトにまとめてくれるようです。 perl使いの間で大人気の「cpanm」でもこれが使われています。 どっかでcpanmの紹介として「1枚岩のスクリプト」みたいな表現を目にしましたが、要するにこれのことを指していたようです。 ちなみに作者はlocal::libの人。 「ファット」って響きが心に刺さりますが、id:miyagawaさんも使ってることだし、きっと良質モジュールなんだろうなーと思って触ってみました。 使ってみて まず

    1枚のスクリプトに全てをまとめてくれるApp::FatPacker - download_takeshi’s diary
  • Class::Data::Inheritable

    NAME Class::Data::Inheritable - Inheritable, overridable class data SYNOPSIS package Stuff; use base qw(Class::Data::Inheritable); # Set up DataFile as inheritable class data. Stuff->mk_classdata('DataFile'); # Declare the location of the data file for this class. Stuff->DataFile('/etc/stuff/data'); # Or, all in one shot: Stuff->mk_classdata(DataFile => '/etc/stuff/data'); DESCRIPTION Class::Data:

    Class::Data::Inheritable
  • ゆーすけべー日記

    サキとは彼女の自宅近く、湘南台駅前のスーパーマーケットで待ち合わせをした。彼女は自転車で後から追いつくと言い、僕は大きなコインパーキングへ車を停めた。煙草を一吸ってからスーパーマーケットへ向かうと、ひっきりなしに主婦的な女性かおばあちゃんが入り口を出たり入ったりしていた。時刻は午後5時になる。時計から目を上げると、待たせちゃったわねと大して悪びれてない様子でサキが手ぶらでやってきた。 お礼に料理を作るとはいえ、サキの家には材が十分足りていないらしく、こうしてスーパーマーケットに寄ることになった。サキは野菜コーナーから精肉コーナーまで、まるで優秀なカーナビに導かれるように無駄なく点検していった。欲しい材があると、2秒間程度それらを凝視し、一度手に取ったじゃがいもやら豚肉やらを迷うことなく僕が持っているカゴに放り込んだ。最後にアルコール飲料が冷やされている棚の前へ行くと、私が飲むからとチ

    ゆーすけべー日記
  • log4ZIGOROu : Gearmanを使ってみた

    daemonの起動 下記のようにdaemonとして起動します。 daemon起動オプションに関してですが、PODの記載は誤りで--daemonizeでは無く--daemonです。 $ sudo gearmand --daemon --pidfile=/var/log/gearmand.pid --debug=1 関数の登録 次にgearmanに実行させたい処理を予め登録し、さらにjob queを待ち受けるworkerを記述します。 #!/usr/bin/perl use strict; use warnings; use Data::Dump qw(dump); use Gearman::Worker; use Storable qw(thaw); use List::Util qw(sum); my $worker = Gearman::Worker->new; $worker->job

  • tokuhirom blog

    Blog Search when-present<#else>when-missing. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: ${entry.path} [in template "__entry.ftlh" at line 3, column 25] - Reached through: #include "__entry.ftlh" [in template "entry.ftlh" at

  • Gearmanはじめました。 - Perl日誌

    近年のWeb業界ではリクエストがある度にすべてを処理してレスポンスを返すのではなく、一部の処理をジョブキューに投げるなりして負荷軽減を試みるのが定石となりつつあるような、そうでないような、そんな時代に生まれたPerl初心者のために、Gearmanを使ったサンプルコードを書いてみるという記事です。 インストール たぶんこうするんだと思います。 install Gearman::Server Gearman::WorkerとGearman::Client,Gearman::Taskはこれで入るやら、はいらないやら、自分の開発環境はずいぶん前にGearman入れていたのですが、ちょっとインストール方法が変わってるような気がします。 ディレクトリ構成 これから紹介する記事はこういう(感じの)ディレクトリ構成です。 /home/hogehoge/eg/client.pl /home/hogehoge

    Gearmanはじめました。 - Perl日誌
  • 簡単な掲示板というかフレームワークの設計をはじめてみた - あたらしものずきっ!

    色々な事情で機能縮小した掲示板を、縮小時の手間と変わらないままで、かつての機能を維持した上で、ユーザ情報をメッセージから分離させて管理できるようにする、という、ちょっと無茶っぽい条件を成立させるスクリプトの作成を勉強がてら行ってる。…使うかどうかは微妙だけど。 現状 元々の掲示板 スクリプト自体はオープンソースだったものの、開発者が公開を停止したため、今でも設置してある掲示板のおおまかな挙動から推測するしかない。 現在の掲示板 ソースについては、現在編集ができる立場にいるためか伺い知る事はできる。とりあえず、テーブル設計や諸処のロジック設計から、拡張した後の手間が大きく増えるのだけは分かっている。 掲示板を一から設計したことがないのもあって、とりあえずアプリのベースを作り、そこに掲示板として必要な機能を突っ込んでいくことにした。PSYRENなる同類アプリも書いてたけど、質的ではない部分で

    簡単な掲示板というかフレームワークの設計をはじめてみた - あたらしものずきっ!
    wkbyshnbtk
    wkbyshnbtk 2010/06/14
    wktk
  • Re: 知ってそうで意外と知られていないperlの小技 10選 - Pixel Pedals of Tomakomai

    意外と知られていないperlテクってのが、意外とあるもんですね。 最近身の回りでいくつか話題に上がったものがあったので、ちょっと書いてみます。 知ってそうで意外と知られていないperlの小技 10選 こういうトリビア的なのはなかなか面白いなあと思ったので便乗させて頂きました。 Re: ランダムシャッフル 続いてこれもソートねた。 これは List::Util::shuffle の方がベターでしょう。*1 % perl use List::Util; print join ' ', List::Util::shuffle qw( 0 1 2 3 4 5 6 7 8 9 ); print "\n"; 1 8 6 3 0 2 7 5 9 4 Re: perlとだけ叩いたら そんなあなたは、まずコンソールに向かって「perl」とだけ打ってリターンしてみてください。 ちなみに、perlrunを読めば

    Re: 知ってそうで意外と知られていないperlの小技 10選 - Pixel Pedals of Tomakomai
  • API経由でWassrをいじってみた。 - 目の前に僕らの道がある

    最近、Wassrをいじることが多くなってきたので、API経由でいろいろできたら便利かなと思いちょっと作ってみました。 ただ、JSONの仕様を勘違いしており、予想外に時間がかかったため、投稿スクリプトしかできませんでした。 一応、ユーザのヒトコトを取得できるメソッドは定義済みです。後はスクリプトの方で返ってくるJSONオブジェクトをパースしてあげれば、よしなにできると思います。 ヒトコト系を取得したいならuser_timelineメソッドのAPIのURLを変更してあげるだけでできると思います。 update.pl Wassrに投稿するだけの単純なスクリプトです。 ホントはユーザIDとかパスワードは外部ファイルに置くのがいいのだとは思います。 ちなみに、スクリプトを動かす環境は文字コードをみれば分かるとおり、Windowsを想定しています。 #!/usr/bin/env perl use st

    API経由でWassrをいじってみた。 - 目の前に僕らの道がある
    wkbyshnbtk
    wkbyshnbtk 2010/06/14
    CPANを意識して名付けるなら「Net::Wassr」とかの方が良いのかも
  • Plack+CatalystでWebアプリ(とCLI)を作ってみる - As a Futurist...

    1 年間インフラ修行ばっかりやってて、カタムースとかプラック企業の流れに乗り切れなかったので 一念発起して最近趣味で Plack と Catalyst で Web アプリを書こうとしています。 ただ、アプリのロジックに入る前に、そもそもモジュールの構造をどうしようかと 試行錯誤するだけで数週。。。一旦ここまでのまとめをしておきたいと思いました。 Perl 界隈の方々は当にエロくてすばらしいなと改めて感じました。 自分のプログラムセンスの無さをひしひしと感じてますが、 今回のアプリの開発を通じて何か CPAN に上げて、僕もエロくなれたらいいなぁ とか密かに思ってたりしてます。 それは MyApp::Web から始まった とりあえずモダン Perl 入門にあるように、以下の様なコマンドで Catalyst 用のモジュールを 一段名前を掘って作りました。 catalyst MyApp::We

    Plack+CatalystでWebアプリ(とCLI)を作ってみる - As a Futurist...
  • Polocky WAF

    Polocky WAF perlで書かれた Web Application Framework Polockyのまとめウィキです トップページページ一覧メンバー編集 トップページ 最終更新: polocky 2010年01月27日(水) 22:32:17履歴 Tweet Polocky WAFとは perlで書かれたWeb Application Frameworkです。(開発フェーズ) 特徴 PSGI対応しています 用途に合わせて、Web Applicationのインターフェースを選択することができます 拡張がしやすいです

    Polocky WAF
  • メソッドの一覧を取得する - だるろぐ

    任意のクラス・インスタンスで使えるメソッドを確認したいとき rubyだったら p Class.methods p instance.methods なんだけどperlでもやりてえぇーって叫んだら http://twitter.com/kamipo/status/13900909851 どらどら。 package Hoge; use strict; use warnings; sub new { bless {}, shift } sub hoge {} sub _fuga {} package main; use strict; use warnings; use Data::Dumper;sub p {warn Dumper @_;my @c = caller;print STDERR " at $c[1]:$c[2]\n\n"} use Class::Inspector; for (q

    メソッドの一覧を取得する - だるろぐ
  • 知ってそうで意外と知られていないperlの小技 10選 - download_takeshi’s diary

    意外と知られていないperlテクってのが、意外とあるもんですね。 最近身の回りでいくつか話題に上がったものがあったので、ちょっと書いてみます。 どれも最新のモダパ的なモノではないけども、知っておくと地味に便利かもしれないノウハウです。 中級レベル以上のperlユーザの人たちでも「お、こんなの知らなかった」というのもあるかもね。 複数項目でのソート よくエクセルなんかで「A列を降順、B列を昇順にして並び替え」みたいなことしますよね? perlで複数項目のsortではどうすればできるでしょうか? じつはとっても簡単。sortの次に続くブロックの中でorするだけです。 例えば以下のような4人の子供たちのデータを年齢順、体重順でソートしてみます。 use strict; my @data = ( { name => '太郎', age => 10, weight => 25, }, { name

    知ってそうで意外と知られていないperlの小技 10選 - download_takeshi’s diary