トップページ⇒php
990コメント339KB

Perlモジュールについて

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。2001/08/15(水) 07:47ID:???
モジュールについて話し合うスレッドです。

モジュールの使い方とかリンクは>>2-10さんが出してくれるかも?!
0009名無しさん@お腹いっぱい。02/02/23 07:27ID:JlmTzXqB
Perlモジュールの日本語訳サイトでフレーム使ってたところ覚えてる方
いらっしゃいますか?
0010名無しさん@お腹いっぱい。02/02/23 07:43ID:???
>9
ここかな?
http://www.bekknet.ad.jp/~bero/docj/module_/
0011名無しさん@お腹いっぱい。02/02/23 07:46ID:JlmTzXqB
うわっこれです
助かりました
0012nobodyさん02/03/20 00:33ID:Mq6aLS7f
みんなで2ch.pmを作ろうYO!
0013nobodyさん02/03/20 00:51ID:???
>>12
じゃぁまず仕様を書いてね。
0014nobodyさん02/03/20 01:26ID:???
パッケージって頭数字使えないべ?
0015nobodyさん02/03/20 01:29ID:???
直接は使えないが、実はけっこうどうにでもなる。

${'2ch::foo'} = 'fuga!';
print ${'2ch::foo'};
0016nobodyさん02/03/20 03:33ID:???
packege BBS2ch;
=head1 NAME

BBS2ch - Multi Post Tool for 2ch.net

=cut
0017nobodyさん02/03/20 04:53ID:TSftstwY
マイヒットなpmは Spreadsheet-WriteExcel 

これで毎週作ってる面倒なEXCEL資料作りを全自動化する計画。

グラフをどうするかがが課題。
0018 ◆fOVovqoo 02/03/20 16:20ID:???
Devel::DProfやBenchmarkにはいつもお世話になっていますね。
効率化するというより、それほど悪くないと納得するためだったりする。
0019nobodyさん02/03/20 19:47ID:wpDr7CAx
やっぱ、Inline.pmでしょ。
0020nobodyさん02/03/20 21:07ID:???
HTML::Templateがもう少し軽ければな…
0021nobodyさん02/03/21 03:02ID:???
packege DBD::BBS2ch;

=head1 NAME

DBD::BBS2ch - DBI driver for BBS2ch

=cut
0022123402/03/22 01:38ID:PNDxe/pL
GDとは別にPERLモジュールでJPEGのリサイズとかできるモジュールはありませんか?
0023_gunzip02/03/22 03:15ID:???
>>22
Imagerモジュールなどいかがですか?
$image->scale(xpixel => ?, ypixel => ?)を呼ぶだけなので。

他にも、Image::Magick,Image::Imlib2, Image::GD::Thumbnail,
Gtk-Perlに付属するGtk::Gdk::Pixbuf(旧GdkImlib)辺りでも
画像のscalingは簡単に行うことができますよ。
0024123402/03/22 09:05ID:PNDxe/pL
>>23
ありがとうございます。
これはレンタル鯖でもつかえるんでしょうか?
こちらがいろいろいじれる鯖だとGDをつかえるんですが
借り物鯖だとインストールとかできそうになくてそういった意味でさがしています
0025nobodyさん02/03/22 11:15ID:???
画像を扱うモジュールが内部でどういう動作をしてるかを考えれば
レンタル鯖とやらで使えるかどうかくらい判りそうなもんだろう。
0026nobodyさん02/03/22 22:19ID:xPJilkwN
OIOI、2ch.pmの話はどうなったんだ?
0027nobodyさん02/03/29 01:50ID:???
モアステキモジュール紹介してほしいage
0028nobodyさん02/03/29 17:44ID:???
http://qb.2ch.net/test/read.cgi/jikken/1017071166/l50
↑こっちでBBS2ch的モジュール上がってるYO
0029Win32さん02/04/10 15:51ID:???
use Win32;
Win32::MsgBox('ageます。', 4 | MB_ICONQUESTION, 'Perlモジュールについて');
0030nobodyさん02/04/10 20:43ID:VIfIuJ6u
HTMLの中の上からn番目のAタグを抽出すると言うようなモジュールって
ありますか?
更にその中身をオプション名とその内容、タグに挟まれたテキスト
などに分解して返してくれるようなら最高なんですけど。
0031nobodyさん02/04/10 21:05ID:???
HTML::LinkExtor
0032nobodyさん02/04/10 23:06ID:I4lhe9xZ
↑それって名前からして多分Aタグだけを取り出すものだと思うけど
すべてのタグを対象にしたものはないのかね?
0033nobodyさん02/04/10 23:27ID:???
a,img,linkなど
http://member.nifty.ne.jp/hippo2000/perltips/html/LinkExtor.htm
0034nobodyさん02/04/11 01:05ID:???
>HTML::LinkExtor はHTML::Parserのサブクラスで・・・(コピー)
HTML::Parserの方使えばなんでも採れるYO
0035nobodyさん02/04/12 19:15ID:tlsM5l1O
できました。ありがちょ。

@link=();

#パーサー・オブジェクトの作成
$p=HTML::Parser->new(
api_version => 3,
start_h => [\&start,"tagname,attr"],
marked_sections => 1,
);
$p->parse($html);
$p->eof;

sub start
{
  my($tagname,$attr)=@_;
  if($tagname eq 'a'){push(@link,$attr->{href});}
}
0036nobodyさん02/04/30 09:00ID:PpiN0rQr
こんなのもあるらしい。
http://jenda.krynicky.cz/#PSH
0037nobodyさん02/05/02 17:02ID:E3wstOhZ
ネットワーク関連のモジュール群ハケーン
レンタルサーバでCGI組む時、LWPやlibnetインストールできない時に使えそう。
http://www.din.or.jp/~bigstone/cgilab/guide/netmodules.html
0038nobodyさん02/05/02 17:18ID:???
Socket使えなかったら意味ないだろ。
0039nobodyさん02/05/02 17:25ID:???
↑それって問題外なんじゃないの?
Socketが使える状況が前提でしょうが。
0040nobodyさん02/05/03 00:54ID:???
>>37
[cgi:44235]は帰れ。
0041nobodyさん02/05/03 01:23ID:???
>>37
いらない。IO::Socket::INETがあるから。
0042nobodyさん02/05/05 00:37ID:???
↑車輪の再開発おめ。
0043nobodyさん02/05/05 08:57ID:???
>>42
人の作った車輪の上でお山の大将気取ってるもどうかと。
0044nobodyさん02/05/06 18:30ID:dZFQgqwT
↑人の作ったモジュール紹介した=お山の大将気取る
になるお前の思考ルーチンもどうかと?
0045あぼーんNGNG
あぼーん
0046nobodyさん02/06/10 10:23ID:LHA1Stqn
誰か自作のモジュール自慢すれ。
0047nobodyさん02/06/10 19:36ID:???
どんなのがいい?
0048nobodyさん02/06/22 13:25ID:PfrrYGvI
XSを利用したモジュール作成の解説をしたサイトってありませんかね?
もしくはここでperlの魔術師がHelloworld.cでもいいので
サンプル書いてみてください。
よろしくです期待age。
0049nobodyさん02/06/22 22:45ID:???
>>48
まずはマニュアル嫁
http://www.kt.rim.or.jp/~kbk/perl5.005/perlxstut.html
0050nobodyさん02/07/03 22:52ID:kRj5caac
Win32::MsgBoxで、ダイアログがウィンドウの前面にでないことが
あるのですが、どうすればいつも前面に出せますでしょうか?
0051nobodyさん02/07/03 22:53ID:???
気合だろ!
00525002/07/03 23:01ID:3+KiYR63
2時間ぐらい試していますが、未だに法則がわかりません。
もちろん気合も試しました。分かる方よろしくおねがいします。m(_ _)m
0053nobodyさん02/07/03 23:09ID:???
>ダイアログがウィンドウの前面にでない
って、そんなときは、どこに出るんだ?
0054nobodyさん02/07/03 23:11ID:???
>>52
この短時間でIDが変わってるぞ。偽者か?
気合でうまくいくはずとマニュアルに書いてあるだろ!
0055nobodyさん02/07/04 00:16ID:8lTiTdof
>>50
うーん、MB_SYSTEMMODALフラグを付ける手はどうでしょう。。。

use constant MB_SYSTEMMODAL => 0x1000;
Win32::MsgBox("キター!!!", MB_SYSTEMMODAL);
005650=5202/07/04 00:31ID:GKK9RANu
>>55
キタ━━━━━(゚∀゚)━━━━━ !!!
原理がサパーリですが、うまくいきました。
どうもありがとうございました。
0057nobodyさん02/07/04 19:20ID:NAJ0SD7/
http://dir.goo.ne.jp/computers/00941/00951/00952/

Gooではリンク先のプレビュー画像が見られますが、こういうの作るモジュールってあるんでしょうかね。
0058nobodyさん02/07/04 19:36ID:NAJ0SD7/
naindenai?
0059nobodyさん02/07/04 22:47ID:???
>>57
http://www.horae.dti.ne.jp/~tkimata/cgi/reference/script/
http://www.horae.dti.ne.jp/~tkimata/cgi/reference/
どうよ?
0060nobodyさん02/07/05 20:25ID:5DbR4nrL
GIFとJpegとPNGを相互変換できて、なおかつ、
画像の編集ができるモジュールはありますか?
GD.pmというのはGIFとJpegを同時に使えないようです。
0061nobodyさん02/07/05 20:27ID:???
それらはPerlでやるべきことではない上、GIFは止めろ。
0062nobodyさん02/07/05 20:27ID:???
ImageMagic
0063nobodyさん02/07/05 20:58ID:???
ローカルで画像いじるならImage::Magickがあると超便利。
落としたエロ画像のサムネイル作ってまふ。
0064nobodyさん02/07/05 22:11ID:???
>>63
アプキボン
0065nobodyさん02/07/05 22:16ID:???
>>64
検索しなさい。いくらでも出てくる。
0066nobodyさん02/07/05 22:21ID:???
64が要望してるのはエロ画像のほうじゃないのか。
0067nobodyさん02/07/05 23:24ID:St7kmpIx
>>59
afo?
0068LEON02/07/07 08:35ID:2rukKasO
WebARENAでは、サーバにないモジュールでも、
自分のcgi-binディレクトリに使いたいモジュールを置けば
使えるみたいなんだけど、
ImageMagickを使いたければ、PerlMagicを置けば使えるようになるのかな?
それとも、ImageMagickがサーバにインストールされてないとダメなのかな。
0069nobodyさん02/07/07 09:10ID:???
>>68
PurePerlなものは、適当なところに置いてきちんと@INCを設定すれば使える。
これはどこでも一緒。
PerlMagickの場合はImageMagickがインストールされていたとしても、
PerlMagick自体コンパイルが必要なのでダメ。
あらかじめサーバ環境用にコンパイルしてサーバに置くか、
もし「許されているなら」サーバでコンパイル、インストールすればよろし。
0070LEON02/07/07 09:33ID:WMCpg0fx
>>68
68さん、ありがとうございます。
結構、藁にもすがる思いで質問したので返事がいただけてかなり嬉しいです。
まだImageMagickとPerlMagickの関係がわかってなくてすみません。
やはりサーバにImageMagickがインストールされてなければ、
コンパイル済みのPerlMagickモジュールを置いても使えないんですよね。。
サーバでのコンパイル、インストールはできないんです。。
0071nobodyさん02/07/07 17:00ID:k28wtQVp
ImageMagickって、root権限持ってないと使えるようにできないの?
コンパイル済みのPerlMagickモジュール、置くだけじゃだめ?
0072nobodyさん02/07/08 00:36ID:???
>コンパイル済みのPerlMagickモジュール、置くだけじゃだめ?

まったく同じ環境でコンパイルしたものなら大丈夫じゃない?
0073nobodyさん02/07/08 09:36ID:SZQSam5Y
>まったく同じ環境でコンパイルしたものなら大丈夫じゃない?

ImageMagickは、あらかじめインストールが必要?
0074nobodyさん02/07/08 16:01ID:SZQSam5Y
Linux用にコンパイル済みのGD.pmってどこにあるか知らない?
0075nobodyさん02/07/12 13:33ID:???
>>74
自分でコンパイルすれば良いんでないの?
0076nobodyさん02/08/01 02:48ID:YMXoET45
PG.pm+postgresで
アプリケーション開発をしています
あるテーブルの存在を確認してなかったらそのテーブルを作るという
プログラムを書きたいのですが
どのようにするのが一番良いでしょうか?
ちなみにODBC+MSアクセスで書いていたときは

sub tableIsExist{
my $table = shift;
my $ExistSql = "SELECT * FROM $table";
if ($DB->Sql($ExistSql)){
return 0;
}
else {
return 1;
}
}
こんな風にしていました。
0077nobodyさん02/08/01 17:54ID:???
SELECT relname FROM pg_class WHERE relkind = 'r' and relname !~ '^pg_' and relname !~ '^xin[vx][0-9]+';

で一覧とったら?
0078nobodyさん02/08/03 00:34ID:XT+awdOD
>77
できましたぁぁぁぁ!!!サンキューです。
0079nobodyさん02/08/03 10:01ID:???
最近、明示的に/暗黙に perl-5.6 が必要なモジュールが
多いね。うちはまだ 5.005_03 が主力だからよくハマるよ...
さっさと 5.8 にしたいなぁ
0080nobodyさん02/08/03 15:38ID:XT+awdOD
/usr/lib/perl5/site_perl/5.6.0/Net/SMTP.pm
にSMTP.pmがある状態で
00817802/08/03 15:42ID:XT+awdOD
すみません↑間違えました
もう一つだけすごく初心者っぽい質問なんですが
/usr/lib/perl5/site_perl/5.6.0/Net/SMTP.pm
があるときに
use NET::SMTP
と記述したスクリプトを実行すると

Can't locate NET/SMTP.pm in @INC (@INC contains: /usr/lib/perl5/5.6.0/i386-
linux /usr/lib/perl5/5.6.0 /usr/lib/perl5/site_perl/5.6.0/i386-linux /usr/l
ib/perl5/site_perl/5.6.0 /usr/lib/perl5/site_perl/5.005/i386-linux /usr/lib
/perl5/site_perl/5.005 /usr/lib/perl5/site_perl .) at test.cgi line 6.
BEGIN failed--compilation aborted at test.cgi line 6.

となってしまうんです。
/usr/lib/perl5/site_perl/5.6.0があるので
ちゃんとパスはとおっているように見えるんですが・・
さらによくわからないままスクリプト内の宣言をuse NET/SMTP
とするとuse strictとぶつかるらしく
変数のパッケージ宣言がおかしいというエラーが大量に出ます。

0082チンポ02/08/03 16:43ID:bV9lZ19l
>>81

× use NET::SMTP;
○ use Net::SMTP;

では?
00837802/08/03 18:12ID:XT+awdOD
>82
(;´Д`)どうもです。
こういうなんでもないところにつまって半日もムだにかかっちゃうから
残業が減らないんだよなあ。

たすかりました
0084nobodyさん02/08/05 10:41ID:???
>83
あ...あんたプロなのか。これでプロになれるのか。
漏れも思いきって会社受けてみるか。
008582だけど02/08/06 13:16ID:u/vVihtn
うちの会社は受けないでくれ
0086nobodyさん02/08/06 17:01ID:???
一緒に仕事したくない会社No.1
0087nobodyさん02/08/10 02:05ID:???
>>84
某C○I-MLはいってみ。
こんなんばっかだから・・・・(;´Д`)
0088nobodyさん02/08/12 09:50ID:lG15UT+D
日本語も使えるイメージ生成モジュールないでしょうか?
GD日本語だめだし
0089siba02/08/12 09:57ID:7rmR5a/3
JAVAでパスワードの暗号化をしたいのですが、
どなたか教えてください
0090nobodyさん02/08/12 10:03ID:???
>>89

なんでJAVA?
0091nobodyさん02/08/12 11:30ID:???
javax.crypto.* でもみれば。
0092nobodyさん02/08/16 05:43ID:???
>>88
GDって日本語使えないんだっけ?
パッチとか当てて出来なかったかな?
0093nobodyさん02/09/16 22:08ID:pL+0JjZV
サブルーチン→モジュールの流れによって、Perlが使いやすくなったのか
ギモンなのですが…。
オブジェクト指向プログラミングをJAVAとActiveScript(スマン)でしか経験して
ないので大きなことは言えませんが、不完全なオブジェクト指向しかできない
のであれば、今までのplファイルでのサブルーチンで良かったような気がします。
へんなコンパイルとかさせるような仕様にしなくても。
どうも、モジュール化への流れでのメリットというのがわからないのですが…。
0094nobodyさん02/09/16 22:08ID:???
こんなイニシエスレをageてしまった…。すまん。
0095nobodyさん02/09/17 10:16ID:???
>>93
どうやらチミはオブジェクト指向のなんたるかが
マターク判っていないようだ。
00969302/09/17 20:13ID:BPpTHLja
うーん、各オブジェクトがそれぞれ自分でメソッドとプロパティを持っててそれに沿って動作、
あるオブジェクトは他のオブジェクトがどう動作しているのか関知せず、ただ必要になったら
functionで相手に「これやってねぇ〜」って指示してその結果だけもらう(結果を得るまでの
プロセスについては関与せず)、ってくらいに思ってます。
それでFLASHは何とかなるので…。

今回は意図的にage。
0097nobodyさん02/09/18 00:22ID:???
>96
それがPerl5ではできないとでも?
そんなの96の書き方次第だろ
0098nobodyさん02/09/18 05:07ID:???
<age><sage>してみよう
0099 02/09/18 09:26ID:gjQd9uRC
>>97よ落ち着け。
93は「コンパイルとかさせるような仕様にしなくても」って発言があるので
そんな仕様にしないとオブジェクト指向化できなかったのか?
と言っているんだろ
0100nobodyさん02/09/18 10:22ID:???
いやぁ、そもそも「へんなコンパイル」が何を指しているのか謎なのだが。
0101nobodyさん02/09/18 19:49ID:???
>>92
画像に表示させる文字列に日本語を使うことならできる
01029702/09/19 02:16ID:???
変なコンパイルて濡れもよくわからなかったのですが
メリットはOOでも書けるようになったっていうそのものじゃん。
OOPerlは変なコンパイルだからだめといわれてもできない方がいやだぞ。
cpanマンセー
0103nobodyさん02/09/19 09:22ID:???
初心者。
長大なテキストを既定のフォーマットにするために、WinでActivePerlを使ってる。
(エディタのマクロみたいな使い方)

文字列をShiftJIS化するのにjcode.plを使っていたが、最近Unicodeも
扱わないといけなくなったので、対応しているjcodeをコピーしようと思った。
ところが、なんだかJcode.pmにモジュール化されていて、CPANがどうのとか・・・。

一応、解説サイトを巡りながら頑張ったけど思うようにインストールしてくれず。

普通にエディタのマクロ使ったほうがイイ? でもPerlって扱いが楽なのさ。
0104nobodyさん02/09/19 10:51ID:???
>>103
(初心者はどうでも良いというか書かないほうが良い)

http://openlab.ring.gr.jp/Jcode/index-j.html
ここのJcode-0.81.zipをダウンロードして
perl win_install.pl
でもインストールできませんか?

どんな方法でモジュールをインストールしようとしたのかと
perlのバージョンを教えてくださいな。
0105nobodyさん02/09/19 12:09ID:???
>>104さん
うわ。すごい簡単にインストールできました。本当にありがとうございます。

今まで、
http://x68000.startshop.co.jp/~68user/net/ext-module.htmlの「CPANモジュール」を
見ながらやってました。
perl -MCPAN -e shel
lをやって、
install モジュール名
でうまくいかず。
0106nobodyさん02/09/19 12:19ID:???
もう二つ質問させてください。

1・
win_installがないモジュールの場合はどうすればよいのでしょうか。
たとえばLWPとかです。

2・
インストール先のフォルダを指定したい場合はどうすればよいのでしょうか。

Perlのバージョンは5.004です。会社のサーバFreeBSDと少しでも同じ環境にするため
古いVerのままなのです。
010710302/09/19 14:01ID:???
5.004だとppm使えないよねぇ。
(522のサポートはまだ続いてるのか?)

素直にCPAN.pm使いましょう。どこでこけてるのかな?
CPAN.pmについてはここが詳しいです。
http://digit.que.ne.jp/work/index.cgi?%A5%E2%A5%B8%A5%E5%A1%BC%A5%EB%A5%A4%A5%F3%A5%B9%A5%C8%A1%BC%A5%EB%28CPAN%29

インストール先はMakefileに定義されてます。
自分でmakeするならMakefileを作るときに設定できる。
http://member.nifty.ne.jp/hippo2000/perltips/module_install.htm
CPAN.pmを使うならそれも設定でできたと思った。
http://member.nifty.ne.jp/hippo2000/perltips/CPAN.htm
0108nobodyさん02/09/19 16:02ID:???
ありがとうございました。特に最後のリンク先が大変参考になりました。
今まではnmakeもCコンパイラもインストールせずにCPAN.pm使ってました。
試しにIO::Scalarをインストールしたところ、無事に成功しました。
本当にありがとうございました。
0109nobodyさん02/09/19 16:03ID:???
やっぱり英語はできたほうが良いのかな・・・?
■ このスレッドは過去ログ倉庫に格納されています