[表示 : 全て 最新50 1-99 101- 201- 301- 2chのread.cgiへ]
Update time : 08/02 03:26 / Filesize : 136 KB / Number-of Response : 348
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

くだすれPerl(超初心者用)2



1 名前:nobodyさん mailto:sage [2008/03/03(月) 05:07:32 ID:???]
このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だが分からない質問を勇気を持って書き込むスレッドです。
Perl使いが優しくコメントを返しますが、
お礼はPerlの布教と初心者の救済をお願いします。

151 名前:nobodyさん mailto:sage [2008/05/01(木) 01:13:00 ID:???]
foreach で読み込むときに異なる行を複数取得教えてください
foreachの前で下記のようにやってみたらエラーになります
$str1 =~ /あいうえお/;
$str2 =~ /さしすせそ/;


152 名前:nobodyさん mailto:sage [2008/05/01(木) 01:16:22 ID:???]
日本語が良くわかんない(><)

153 名前:nobodyさん [2008/05/02(金) 11:14:09 ID:Sh68NuTD]
2chの日付の後に付くIDはどうやって算出しているのですか?
よろしくお願いします。

154 名前:nobodyさん mailto:sage [2008/05/02(金) 23:30:24 ID:???]
pc11.2ch.net/php/#9のように?とは&使わずに引数使うのどうするの?

155 名前:nobodyさん mailto:sage [2008/05/03(土) 00:23:50 ID:???]
>>154
mod_rewriteとか。

実をゆうと localhost/file.cgi/aaa=bbb
とかで、/の後ろを引数として渡したり出来るんだけど、
色々と混乱しそうだから、俺は使わない。

156 名前:nobodyさん mailto:sage [2008/05/04(日) 16:40:15 ID:???]
どうやったら、変数に何も値が入ってないってことを確かめられるの?

157 名前:nobodyさん mailto:sage [2008/05/04(日) 18:06:42 ID:???]
$hensu or print "ナイヨ(><)\n";

158 名前:nobodyさん mailto:sage [2008/05/04(日) 18:19:28 ID:???]
$hensu = 0;
で破綻するので>>157はデタラメ。

defined($hensu) or print "ナイヨ(><)\n";
が正解。

159 名前:nobodyさん mailto:sage [2008/05/04(日) 19:26:18 ID:???]
>>156にとっての「何も値が入ってない」によって答えが変わるでしょ。

my $var = ''; # これが「長さ0の文字列が入ってる」のか「何も入ってない」のか
print "どっちが正解かわかんないんです(><)\n" if $var xor defined($var);



160 名前:nobodyさん mailto:sage [2008/05/04(日) 22:15:41 ID:???]
三値論理

161 名前:nobodyさん mailto:sage [2008/05/05(月) 18:10:43 ID:???]
use Socketと書かなくても、gethostbyname関数が使えるのはなぜ?
ドメインを入力してIPアドレスを出力するだけの、単純なスクリプトを作りたいので

162 名前:nobodyさん mailto:sage [2008/05/07(水) 13:21:17 ID:???]
記事の中の
 a href=" URL "
もしくは
 img src=" URL "
のURLが相対パスになっていた時に絶対パスに変換されるようにするには
どうしたらいいですか?

163 名前:nobodyさん mailto:sage [2008/05/07(水) 19:46:59 ID:???]
HTMLタグに「絶対パス」を入れても表示出来ないよ

164 名前:nobodyさん [2008/05/07(水) 21:26:07 ID:fDlQQ0EM]
いまapache?でcgiのテストをしてるんですが。
長居のでソースは遠慮するんですが、そのcgiを指定するとPLファイルをブラウザで表示したみたいに自分の打ったテキストがそのまま出てしまうのですが、このとき考えられるミスを教えて下さい。

165 名前:nobodyさん mailto:sage [2008/05/07(水) 22:20:31 ID:???]
>>161
use strict; use warnings;
#use Fcntl qw(:flock); use Socket;

open(LOG, '>', 'test.tmp') or die $!;
flock(LOG, 2);
#flock(LOG, LOCK_EX);
print LOG scalar gethostbyaddr(pack('C4', 127, 0, 0, 1), 2), "\n";
#print LOG scalar gethostbyaddr(pack('C4', 127, 0, 0, 1), AF_INET), "\n";
close(LOG);

use Fcntl qw(:flock) や use Socket しなくても flock() も gethostbyaddr() もつかえる。ふしぎ!

>>162
よくわかんないけど $ENV{'SERVER_NAME'} とか $ENV{'SCRIPT_NAME'} とか
ttp://search.cpan.org/~gaas/URI-1.36/URI.pm
ここの URI->new_abs() とかを眺めるといいんじゃないかと。

>>164
・自鯖板ネタなのにここに書いてる。
・よくわかんないまま共用レン鯖でテストしてる。
・ファイル名が なんたら.cgi だけど .htaccess で .cgi が text/plain になるよう仕込んである。
・ファイル名が なんたら.pl で実行属性がついてない。
・実は Perl と無関係な問題。
…1つぐらいは当たってると思います。

166 名前:nobodyさん mailto:sage [2008/05/07(水) 22:27:20 ID:???]
これじゃね?→Content-Type: text/html;

167 名前:nobodyさん [2008/05/07(水) 22:44:41 ID:fDlQQ0EM]
>>165
あ、すいません。自鯖板ネタなんだと思います。
そんな板があると知らなかったので・・・何回か色々とググったら、たぶんapacheの設定ミスみたいです。
見直してみます。
ご迷惑おかけしました。
>>166
そっちは試してみたので。スクリプト的にはたぶん問題ないです。
helloworldレベルの奴でも出なかったし、本丸写しでも無理でしたし。
ありがとうございました。

168 名前:nobodyさん mailto:sage [2008/05/08(木) 00:03:38 ID:???]
$HOGE = ABC
DEF123 を ABC123 に置き換えたい時は
$str =~ s/DEF123/$HOGE123/g;
では駄目ですよね? どうしたらいいですか?

169 名前:nobodyさん mailto:sage [2008/05/08(木) 00:16:04 ID:???]
$str =~ s/DEF123/${HOGE}123/g;



170 名前:nobodyさん mailto:sage [2008/05/08(木) 00:50:06 ID:???]
>>169
ありがとうございます。うう…

171 名前:nobodyさん mailto:sage [2008/05/08(木) 10:10:29 ID:???]
>>161
組み込み関数だから使える。

172 名前:161 mailto:sage [2008/05/08(木) 18:42:19 ID:???]
>>171
thx

173 名前:nobodyさん mailto:sage [2008/05/08(木) 20:29:16 ID:???]
ABC/DFG/HIJ/../  →  ABC/DFG/
こういうのが         こういう感じで置き換わるように

$str =~ s/\/[^\/]*\/\.\.\//\//g;
こうやってみたのですが

ABC/DFG/HIJ/../../  →  ABC/DFG/../
こういうのは         こうなっちゃいます

ABC/DFG/HIJ/../../  →  ABC/
こうなってくれるにはどうしたらいいですか?

174 名前:nobodyさん mailto:sage [2008/05/08(木) 20:46:01 ID:???]
../ を消すだけじゃ駄目?

$str =~ s{\.\./}{}g;

こんな風に。

175 名前:173 mailto:sage [2008/05/08(木) 20:59:09 ID:???]
>>174
../ が前方を巻き込んで消えるようにしたいのです
一行では無理でしょうか

176 名前:nobodyさん mailto:sage [2008/05/08(木) 21:06:50 ID:???]
ごめんなさい。
完全に勘違いしてました。

こういうこと?

$str =~ s{[^/]*/(\.\./)+}{}g;


177 名前:173 mailto:sage [2008/05/08(木) 21:22:58 ID:???]
>>176
すみませんお手数おかけして…
それだと
ABC/DFG/HIJ/../   の時も
ABC/DFG/HIJ/../../  の時も
ABC/DFG/  になってしまいます

ABC/DFG/HIJ/../../  の時には
ABC/   になるようにしたいのです

178 名前:nobodyさん mailto:sage [2008/05/08(木) 21:29:39 ID:???]
正規表現でどうにかする方向は>>176さんに任せつつ。

>>173
use File::Spec;
print File::Spec->canonpath('ABC/DFG/HIJ/../../'); # ABC

末尾のデリミタが消えたりしますが。

179 名前:176 mailto:sage [2008/05/08(木) 21:40:41 ID:???]
質問の趣旨がようやくわかった。ファイルパスの操作か。
こんなことしてどうするんだろうとか不思議に思ってた。
なんか寝ぼけてるな。
これを正規表現でどうにかしたのをみてみたい。



180 名前:173 mailto:sage [2008/05/08(木) 22:04:20 ID:???]
わ、最初からファイルパスと言うべきでした。すみません。
RSS出力のCGIをいじってて、文章中にあるリンクやimgタグがRSSフィードでは
絶対パスでないと働かないので、相対パスになってた時に絶対パスに置き換わるように
したかったのです。

$RSS_BASE_URI = "$ENV{'HTTP_HOST'}$ENV{'SCRIPT_NAME'}";
$RSS_BASE_URI2 = &GetDir($RSS_BASE_URI);

元のCGIにこれがあるので、

$str =~ s/href=\"/href=\"$RSS_BASE_URI2/g;
$str =~ s/src=\"/src=\"$RSS_BASE_URI2/g;
$str =~ s/http\:\/\/.*?\/http\:\/\//http\:\/\//g;
$str =~ s/\/\.\//\//g;
$str =~ s/\/[^\/]*\/\.\.\//\//g;

こうやってみたんですが…(見にくくてすみません)
こういう書き方をするようなものではないのでしょうか?

>>178
すみません、記事の中からURLを抜き出して当てはめるにはどうすれば…

181 名前:178 mailto:sage [2008/05/08(木) 22:46:06 ID:???]
my $str = 'ABC/DFG/HIJ/../.././././';
while (index($str, './') + 1) {
 $str =~ s!/\./!/!g;
 $str =~ s!/[^/]*/\.\./!/!g;
}
print $str;

ループなしでどうやるんだろう。

>>180
最初から「>>162です」と言って欲しかった気がする165です。
$RSS_BASE_URI2 の正体等々よくわかんないので、下記を見ながらごにょごにょしてください。

use URI;
print URI->new_abs('../../images/spacer.gif', 'example.com/cgi-bin/test/');
# example.com/images/spacer.gif

182 名前:nobodyさん mailto:sage [2008/05/08(木) 22:46:10 ID:???]
>>180
横レス。
モジュールがあるか?と静観してたんだが、こっちに移動してきたのかw
my $RSS_BASE = '/ABC/DFG/HIJ/' ; # 絶対パス
my $path = '../../abc/efg/' ; # 相対パス
my $cnt = $path =~ s{\.\./}{}g ; # ../ の数把握と同時に消去。
$RSS_BASE =~ s/([^\/]*?\/){$cnt}$// ; # 絶対パスから../の回数分のディレクトリを削る。
print $RSS_BASE . $path . "\n" ; # プリント。

183 名前:nobodyさん mailto:sage [2008/05/08(木) 22:47:32 ID:???]
ああ、やっぱモジュールがあったのねorz...
おまけにタワゴト書いてるし。


184 名前:173 mailto:sage [2008/05/08(木) 23:36:51 ID:???]
>>181
ごめんなさい。>>162です。
記事の中から該当部分を抜き出してまた戻す方法も分からない絶望的分からなさだったので
教えていただいたものを使うことができず、恥ずかし悲しくなりながら単純な置換だけでなんとか
やれないかと別の方向にごにょごにょしちゃってました。
もう少し勉強してそれを使えるようにがんばってみます。ありがとうございました。

>>182
移動してきてました…。
自分が知らないだけでこれもきっと一行ですむのだろうと思ってたら、そうでもないようですね。
勉強してなんとか単純置換以外も使えるようになろうと思います。ありがとうございました。

185 名前:nobodyさん mailto:sage [2008/05/09(金) 04:31:31 ID:???]
モジュール使えで終了な話ではあるけどワンライナーでかけないのが悔しいorz


186 名前:nobodyさん mailto:sage [2008/05/09(金) 07:34:10 ID:???]
せいぜい短くしても
$str="ABC/DFG/HIJ/../../././abc/efg" ;
1 while $str =~ s{([^/]*?/\.\./|\./)}{} ;
print $str . "\n" ;
程度だね。



187 名前:nobodyさん [2008/05/10(土) 18:46:41 ID:jhS0+1hl]
テストしても何も表示されないんですが何がおかしいのでしょう?
print "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01//EN\">\n";
print "<html>\n";
print "<head><title>あ</title></head>\n";
print "<body>$kao<br>$body<br>$asi</body>\n";
print "</html>";
タイトルすら出てくれないんです。
たぶん初歩的なミスだと思うのですが・・・


188 名前:nobodyさん mailto:sage [2008/05/10(土) 19:17:45 ID:???]
ヘッダは?

189 名前:nobodyさん [2008/05/10(土) 20:49:00 ID:jhS0+1hl]
print "Content-type: text/html\n\n";
これですか?




190 名前:173 mailto:sage [2008/05/10(土) 21:11:01 ID:???]
>>186
あ、一行でもできたんですね!
ありがとうございます、動きました!

URLを抽出してモジュールに渡すのに悪戦苦闘してましたが、
このままできないのもくやしいのでそっちもがんばってきます。

191 名前:nobodyさん mailto:sage [2008/05/10(土) 23:31:35 ID:???]
>>189
その行を print "<!DOCTYPE〜 の行の前に書いてる?
あとエラーじゃなくて真っ白? ソースも?

192 名前:nobodyさん [2008/05/11(日) 12:00:02 ID:/WAyhnOg]
>>191
はい。この行を書いて、一行改行してhtmlソースです。
ANHTTPDで真っ白でした。
前に$kaoとかを定義づけてるんですけども(ifで)それのミスなら500が出るかな、と思ったので。


193 名前:181 mailto:sage [2008/05/11(日) 17:10:05 ID:???]
>>190
「くやしいのでモジュール使うやりかたでもがんばってみる」方のようなので
ごにょごにょするときの参考にしてみてください。

use URI; # URIモジュールさん召喚。
my $RSS_BASE_URI2 = 'example.com/my/rss/generator/'; # 例。
my $str = join('', <DATA>); # __DATA__ 以下の割箸をまとめて $str に袋詰めします。

# >>180に基づいてみました。
$str =~ s/href="([^"]+?)"/'href="'. URI->new_abs($1, $RSS_BASE_URI2) .'"'/eg;
$str =~ s/src="([^"]+?)"/'src="'. URI->new_abs($1, $RSS_BASE_URI2) .'"'/eg;

print $str, "\n";
# 出力:
# <img src="example.com/diary/img/test.jpg">
# <a href="example.com/diary/latest">latest</a>
# <a href="example.com/test/script.cgi">Test Script</a>

__DATA__
<img src="../../../diary/././img/././test.jpg">
<a href="../../../diary/latest">latest</a>
<a href="example.com/test/script.cgi">Test Script</a>

194 名前:193 mailto:sage [2008/05/11(日) 17:25:08 ID:???]
事故レスれす。

> $str =~ s/href="([^"]+?)"/'href="'. URI->new_abs($1, $RSS_BASE_URI2) .'"'/eg;
> $str =~ s/src="([^"]+?)"/'src="'. URI->new_abs($1, $RSS_BASE_URI2) .'"'/eg;

$str =~ s/(href="|src=")([^"]+?)"/$1. URI->new_abs($2, $RSS_BASE_URI2) .'"'/eg;

195 名前:nobodyさん mailto:sage [2008/05/11(日) 20:48:25 ID:???]
>>192
ANHTTPDの設定だと思うけどなー。
「ANHTTPD 真っ白」でぐぐったらなんか色々出てきたから
やってみたら

196 名前:nobodyさん mailto:sage [2008/05/12(月) 04:25:47 ID:???]
ブラウザを使わずにBookOFなどの商用サイトに接続して本を検索したり注文したりする
Perlで可能でしょうか?
可能でしたら具体的に教えていただけないでしょうか


197 名前:nobodyさん mailto:sage [2008/05/13(火) 03:27:45 ID:???]
そのサイトが検索用にAPIでも提供していれば
コマンドラインからの実行で検索は出来るはず(Amazon等)
注文までは知らね


198 名前:nobodyさん mailto:sage [2008/05/13(火) 05:33:31 ID:???]
>>196,>>197
別にAPIとか対応して無くても、Formで受け付けてくれるなら(JavascriptやFlashでなければ)
気合さえあれば、検索も注文も出来る。

199 名前:190 mailto:sage [2008/05/13(火) 07:31:33 ID:???]
>>193
ありがとうございます、参考に……って回答だった!
自分のとこでも動きました。こんなに簡潔になるなんて感激です。
~ s/ 以下にも入れられたんですね…
一回やってエラーが出たので(多分何か抜けてた)
別の場所で動かしたそれを元に戻す過程がいるのかと
甚だしい勘違いをしてました。

何一つ自分で解決できなかったけどなぜか大きく成長したような気がしました
本当にありがとうございます。
CGIでやってみたいことはまだまだあるので次はgoogle的なもので
解決できるようになりたいものです。



200 名前:nobodyさん mailto:sage [2008/05/14(水) 02:23:53 ID:???]
>>198
まあ、やって出来ない事は無いとは思うけど
気合いってよりは無駄な作業が多くなるでしょ
検索して返ってくるのはHTMLな訳だからそこから必要な物を切り出して
さらにフォームを探して送信する内容を整えて・・・


201 名前:nobodyさん mailto:sage [2008/05/14(水) 04:27:20 ID:???]
>>200
そう、だから気合がいる。昔そんなのを書いてて、
「こんなん苦労して書く必要あんのかよ?しかも1サイトにしか通用しねえし・・」
とか思ったこともあるけど、気合(笑)でカバーした。あの頃は若かった。

202 名前:196 mailto:sage [2008/05/14(水) 04:44:38 ID:???]
みなさん情報ありがとうございます
ブラウザ無しでできるって事ですね
ブラウザ無しでデータをやり取りすると速いんじゃないかと思うのですが
実際どうでしょうか?
込み合ってるサイトもスイスイですか?

203 名前:nobodyさん mailto:sage [2008/05/14(水) 05:50:58 ID:???]
>>202
それは、相手のサーバーの処理能力とか、回線状態による。
まあそのページが、Javascriptやら画像やらフレームやらで大変込み入った内容なら
ブラウザでレンダリングするよりかは早くなるかも知れん。
(向こうのレスポンスについては、こっちからじゃなんもでけん)
けど、HTMLを正規表現等でパースして、ifで場合分けして、Formに内容セットしてとかしてたら、
はっきり言ってブラウザでクリックしたりしてするのの楽さと比べて、そんな恩恵あるとは思えん。
なにより、そうゆうコード書くのにかなり気合を要する(w)。

まあやるのは自由だけど・・・。
DDosアタックでも仕掛けるのなら話は別だが・・。

204 名前:nobodyさん mailto:sage [2008/05/14(水) 06:19:24 ID:???]
スイスイ具合は「画像オフ・JSオフ・CSSオフ」のブラウザと大差ないよ。レンダリングの有無だけ。
「Perlで書けばスイスイ!」だけを期待してるんだったら、やめれと。
でも、HTMLをパースしてCookieも食べて、フォーム仕立てて送信、お返事をパース…の繰り返しを書いて
意地でもPerlで注文してやる、というマゾな考えならそれはそれでありなのかもね。

205 名前:nobodyさん mailto:sage [2008/05/16(金) 00:52:53 ID:???]
近所の古本屋さんでオライリーPerl リソースキット UNIX版Xと記載されたperlの解説本を発見!
定価15000円らしいのだが2000円の値札が付いている
CD付属でそのCDは未開封
パラパラッと立ち読みしたらWindows環境にも通用しそうな気がするんですよ
自分はWindows環境なんだけどこの本は勉強なりそうですか?
付録のCDはWindows環境でも使えそうですか?
ご存知の方お願いします


206 名前:nobodyさん mailto:sage [2008/05/16(金) 12:23:26 ID:???]
>>205
それ、解説書じゃなくて、CPANにある
モジュールのドキュメントを和訳しただけのものだから。
しかも10年前のものだから。
www.oreilly.co.jp/out/presuni/



207 名前:nobodyさん mailto:sage [2008/05/16(金) 16:32:25 ID:???]
>>206さん
ありがとうです
UNIXと記載がありますが2000円捨てるつもりで買ってみようかと思います
他にも古い本でプログラミングperlUNIXとか600円で売っていたんですよ
Windowsで動くのか心配だけど一緒に買ってみます

208 名前:nobodyさん mailto:sage [2008/05/16(金) 16:37:16 ID:???]
XPのためにWin98の本買うようなもの
最新のドキュメントを探したほうがいい
古いの見ても混乱するだけ

209 名前:nobodyさん mailto:sage [2008/05/16(金) 16:45:50 ID:???]
>>208さん
そうだなー
そう言われればその通りですよね
やっぱり見合わせます
ありがとうございます



210 名前:nobodyさん mailto:sage [2008/05/16(金) 17:18:48 ID:???]
Perlほど解説本なしでネットでまかなえるプログラミング言語はないだろう

211 名前:nobodyさん mailto:sage [2008/05/19(月) 01:43:18 ID:???]
コマンドプロンプトからユーザエージェントして返ってきた文字列が
英数字以外は文字化けしてます
コマンドプロンプト内で読めるように教えてください
jcode.plもエラーになります

212 名前:nobodyさん mailto:sage [2008/05/19(月) 01:52:01 ID:???]
>>211
意味がわかりません。
> コマンドプロンプトからユーザエージェントして
とはどうゆうことですか?

213 名前:nobodyさん mailto:sage [2008/05/19(月) 02:16:27 ID:???]
わかんないならスルーしろよ
なんで答えるの?
教えたらわかりそうなのか?

214 名前:nobodyさん mailto:sage [2008/05/19(月) 02:24:16 ID:???]
>>213
いやあ、多分LWP-UserAgentのことかなとエスパー。
ほんで取ってきたページのソースがcp932じゃないから
コマンドプロンプトで文字化け。

実は俺も昔やったことがある。
だから聞いてみた。

215 名前:nobodyさん mailto:sage [2008/05/19(月) 02:26:22 ID:???]
>>214
ぅぉぉぉー ヽ( ゚д゚)ノヽ(゚д゚ )ノ ぅぉぉぉー
わかってんじゃん
それそれ
cp932をも少し詳しく

216 名前:nobodyさん mailto:sage [2008/05/19(月) 02:27:15 ID:???]
「CLI で LWP を飛ばしたら、CP932 じゃない文字列が返ってきます」まではわかるから、
もう一段階進んで
「jcode.pl は UTF-8 を知らんぞ」でいいのかな。

217 名前:216 mailto:sage [2008/05/19(月) 02:29:01 ID:???]
つーか、質問者さんがその態度で通すんだったら移動してくださいな。

くだらない質問でもど偉そうに聞いていいスレ
pc11.2ch.net/test/read.cgi/php/1158647441/

218 名前:nobodyさん mailto:sage [2008/05/19(月) 02:40:29 ID:???]
>>215
次からは、もちっと質問を詳しく。

ほいで解決方だけど、
perl 実行したいスクリプト.pl > kekka.html
とでもして、そのファイルを各種文字コードで開けるエディタ(秀丸、TeraPad等)で開く
もし持ってなければ、とりあえずIEで開けばなんの文字コードかはわかる。
or
use Encode;(5.8以降標準で入ってる)
で文字コードをcp932に変換。

>>216
その可能性もあるかもだけど、多分、もともとのページの文字コードが分かってなかったら使えない。
(と思ったが、自動判別出来るんだっけ?もう長いこと使ってないから忘れちまった。)

あと、$response()->as_string() あたりでサーバーからのレスポンスヘッダが読めるから、
それでそのページの文字コードを判別しい。(か、もしくはhtmlの中の<metaを探すか)

219 名前:nobodyさん mailto:sage [2008/05/19(月) 02:50:31 ID:???]
>>218
自動判別は (jcode.pl|Jcode.pm|Encode::Guess) な感じでいちおうあるよ。
# jcode.pl は UTF-8 に対応してないので、その辺はどうにもならない。

どれも「当たるとは限らん」ところが大事ですけど。



220 名前:nobodyさん mailto:sage [2008/05/19(月) 02:50:47 ID:???]
>>217
気分悪いならスルーでいいよ
あなた個人を攻撃してるわけでもないのに
態度云々言われたらこっちが気分悪い
取り合えず2chには向いてないと思うよ
これからもし私を見かけてもスルーしてね
おちょくってるわけでもないのに変な奴だ

>>218
詳しくありがとう



221 名前:nobodyさん mailto:sage [2008/05/19(月) 03:23:45 ID:???]
例の人が久々に来てたのか。エスパーたち、乙。

222 名前:nobodyさん mailto:sage [2008/05/19(月) 10:53:12 ID:???]
またおまえかwww

223 名前:nobodyさん mailto:sage [2008/05/19(月) 15:45:54 ID:???]
このバカ定期的に沸いてくるな
しかもあちこちに増殖している

224 名前:nobodyさん mailto:sage [2008/05/19(月) 16:40:56 ID:???]
ふーん
人を馬鹿扱いできるほどお前稼いでるの?
税金なんぼ払ってるかいってみ

225 名前:nobodyさん mailto:sage [2008/05/19(月) 16:59:25 ID:???]
失せろ

226 名前:nobodyさん mailto:sage [2008/05/19(月) 17:15:21 ID:???]
キモイ

227 名前:nobodyさん mailto:sage [2008/05/19(月) 18:46:02 ID:???]
稼いでる = 馬鹿でない

上の理論が成り立つと思ってるマヌケさ

228 名前:nobodyさん mailto:sage [2008/05/19(月) 18:49:18 ID:???]
なんか自分を凄く見せたがる為に銭金の話をしたがる馬鹿いるよな
森伊蔵云々、ディナー云々
中学生のホラ自慢みたいw


229 名前:nobodyさん mailto:sage [2008/05/19(月) 19:09:24 ID:???]
もう構うなってw



230 名前:nobodyさん mailto:sage [2008/05/19(月) 21:49:23 ID:???]
みんなお疲れ様
わかる人お願いします
ソースコードutf-8で保存してから実行してみた
アクティブパール5.88
WindowsXp
ここからどうすれば日本語になるの?

use LWP::UserAgent;
use utf8;
use encoding 'cp932';
$ua = LWP::UserAgent->new();
$req = HTTP::Request->new("GET", "www.yahoo.co.jp/");
$res = $ua->request($req);
print $res->content();


231 名前:nobodyさん mailto:sage [2008/05/20(火) 04:17:01 ID:???]

use LWP;
use Encode;

print encode('cp932',decode('utf8',LWP::UserAgent->new()->get('www.yahoo.co.jp')->content()));

232 名前:nobodyさん mailto:sage [2008/05/20(火) 04:28:46 ID:???]
>>231
私の環境ではエラーになっちゃったけど
物凄く参考になった
ありがとう

233 名前:nobodyさん mailto:sage [2008/05/20(火) 04:36:24 ID:???]
>>231
できました!
スペースの文字コードを半角スペースに変えたらエラーにならないで実行できました
見事に日本語になってます
ありがとうございました!

234 名前:nobodyさん mailto:sage [2008/05/20(火) 15:30:39 ID:???]
>>231をhtmlファイルで保存したいんだけどできない
すいませんまた教えてください

open(FH, '>>', "yahoolog001.html") or die "Cannot open content()!";
flock(FH, 2);
print FH qq|content()\n|;


235 名前:nobodyさん mailto:sage [2008/05/20(火) 16:51:57 ID:???]
>>234
231をyahoo_get.plとでも名前付けて保存して、
perl yahoo_get.pl > yahoo001.html

236 名前:nobodyさん mailto:sage [2008/05/20(火) 17:29:08 ID:???]
>>235何回もすいません
どうすればいいのか?
下記のような状況です

open(FH, '>>', "yahoolog001.html") or die "Cannot open yahoo001.html!";
flock(FH, 2);
perl yahoo_get.pl > yahoo001.html;

-----------------
Can't locate object method "perl" via package "yahoo_get" (perhaps you forgot to
load "yahoo_get"?) at yahoo-tes001.pl line 6.

237 名前:nobodyさん mailto:sage [2008/05/20(火) 18:28:08 ID:???]
>>235
スクリプト内に入れてやれよww

print FH encode('cp932',decode('utf8',LWP::UserAgent->new()->get('www.yahoo.co.jp')->content()));

238 名前:nobodyさん mailto:sage [2008/05/20(火) 18:38:22 ID:???]
>>236
違う違う、235のは、コマンドラインから実行するんであって、perlスクリプトの中に書くんではない。

>>234とか見てると、ファイルのオープンとかはあってるけど、
オブジェクトとか、クラスメソッドとかのことを良く分かってないようなので、
とりあえず一行で書けるのにしてみた。

それから、君は>>211>>230と同じ人(?、かどうかは定かではないが)
コマンドプロンプトから実行してるなら、リダイレクトや標準出力、標準入力等についてもある程度は理解がないと。
(Perlではないんで、入門書とかにはあんまり書いてないか。でも基本ってか常識レベルなんで、
わかってないとこれからしんどいよ。逆にわかってくると、いちいちスクリプトの中でやらなくていいことが増えるんで
書くのが楽になるし、理解も深まる。)

239 名前:nobodyさん mailto:sage [2008/05/20(火) 18:42:43 ID:???]
wktk



240 名前:nobodyさん mailto:sage [2008/05/20(火) 21:15:41 ID:???]
>>237さん、>>238さん、御二方ともお忙しい中ありがとうございます
FH付けると何故かまた文字化けになってしまい苦戦していました
よくわかりませんがcp932を止めたら文字化けが亡くなりました
アドバイスのお陰で2つの方法で保存させることが出来ました
しかも昨日までは取得した最後の1024バイトしか表示されなかったのですが
ページ全部を取得できていますありがとうございました
↓スクリプトだけで保存でたソース
---------------
use LWP;
use Encode;
open(FH, '>>', "yahoolog001.html") or die "Cannot open yahoo_get.pl!";
flock(FH, 2);
print FH LWP::UserAgent->new()->get('www.yahoo.co.jp')->content();
↓コマンドラインから保存できたソース
--------------
use LWP;
use Encode;
print LWP::UserAgent->new()->get('www.yahoo.co.jp')->content();
ここからログインのテストしたいので
またお願いするかもしれませんが
その時はよろしくお願い致します
>>238さん
勉強方法詳しくありがとうございました
標準入出力の解説書なかなか見当たらないです
手持ちの解説書で標準入出力を解説しているのは
「perlデータマンジング」という本だけです
大変わかりやすく良書なのですが紙面の関係上さわり程度なのが残念です
何かお勧めの解説書があれば教えて頂ければ嬉しいです
ありがとうございました


241 名前:nobodyさん mailto:sage [2008/05/22(木) 14:07:57 ID:???]
お世話になります
httpsでログイン可能な簡易ブラウザサンプルどこかないでしょうか?
自分が調べたところ2001年にある雑誌が付録で付けていたようなのですが
絶版になり各方面探しても見当たりませんでした
やりたいことはhttps接続での送受信です
お心当たりのある方よろしくお願い致します

242 名前:nobodyさん mailto:sage [2008/05/22(木) 14:12:19 ID:???]
LPW

243 名前:nobodyさん mailto:sage [2008/05/22(木) 14:12:53 ID:???]
間違えた笑
LWP

244 名前:nobodyさん [2008/05/23(金) 20:25:12 ID:VktSXUAF]
sで一気にいくつかのものを変換する方法ありますか?
たとえるならあいうえおという文のあとおをかとこにおきかえたいんです。

245 名前:nobodyさん mailto:sage [2008/05/24(土) 02:20:54 ID:???]
trじゃダメなの?

246 名前:nobodyさん mailto:sage [2008/05/26(月) 19:32:51 ID:???]
どもお世話になります
あれから色々調べているんですけど
ログインや検索やセレクトメニューの選択やボタンクリックなど
具体的なサンプルってないですね
もしかしてperlで出来ないですか?
結局HACKER本買い捲ったんだけど
みんなHTMLの取得までなんですよ
そこからセレクトメニューを選んだりOKボタンをクリックするとか
できないんだろうか?


247 名前:nobodyさん mailto:sage [2008/05/26(月) 19:36:22 ID:???]
お前は何を言っているんだ

248 名前:nobodyさん mailto:sage [2008/05/26(月) 20:03:33 ID:???]
なんで?
perlでなんでも出来るって言ってたじゃないですか?

249 名前:nobodyさん mailto:sage [2008/05/26(月) 20:18:52 ID:???]
ネタですか?



250 名前:nobodyさん mailto:sage [2008/05/26(月) 20:35:06 ID:???]
>>248
もしかして>>196からの流れか?
ひょっとして画面が表示されて検索ワードが勝手に入力されてセレクトメニューが勝手に選択されてボタンが勝手に押されるとか
そういうのイメージしてる?

251 名前:nobodyさん mailto:sage [2008/05/26(月) 20:47:35 ID:???]
>>250
それそれ
それです!
perlで出来るんですよね?
今のところそのようなサンプル見当たらないんですよ
自動ソフトのスクリプトとかならOKボタンのクリックなどは
初歩の初歩インストール後5分後には覚えれるくらい簡単なんですけど
perlの場合参考になるような記述すら見当たらないんですよ
超凄いらしい解説本やオライリーのHACKシリーズやWEBシリーズを購入したんですけど
全然すごくない
OKボタンの1回すら出てこない
なんでもできないのですか?






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<136KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef