Perlを使って2ちゃんねるにHello Worldを書き込む
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2007/07/15(日) 16:16:500002デフォルトの名無しさん
2007/07/15(日) 16:23:17というか、すでに入っているんだけど^^;
0003デフォルトの名無しさん
2007/07/15(日) 16:46:02むかしLWP::Simpleを使ったことはあるとはいえ、
Simpleっていうぐらいだからもっと高度なことをするときには
別のものがいいのだろうか?
0004デフォルトの名無しさん
2007/07/15(日) 16:49:030005デフォルトの名無しさん
2007/07/15(日) 16:55:140006デフォルトの名無しさん
2007/07/15(日) 16:58:13言語? php用ライブラリ?
0007デフォルトの名無しさん
2007/07/15(日) 17:10:48http://d.hatena.ne.jp/keyword/curl
ライブラリとしてのlibcurl、それをコマンドラインから使用するcurl。
それとはまったく別の、次世代ウェブ記述言語Curlがあるんだね。
>>5さんがいっているのはコマンドライン用Curl?
悪くは無いんだけど、共有レンタルサーバーでも使えるようなやり方を
目指しているので。でもあとで使うよ!
0008デフォルトの名無しさん
2007/07/15(日) 17:15:09とりあえず、必要と思われる機能は
UserAgentなどのヘッダやクッキーをいろいろ設定してhtmlを読み込む。
帰ってくるヘッダやクッキーを読み取れる機能。
まあ、シンプルじゃないライブラリなら大概、対応しているだろう。
あと個人的に、proxy対応、https対応のライブラリであってほしい。
さぁ、どんなライブラリがあるのか探すぞ!
0009デフォルトの名無しさん
2007/07/15(日) 17:18:340010デフォルトの名無しさん
2007/07/15(日) 17:19:430011デフォルトの名無しさん
2007/07/15(日) 17:21:18Javaが簡単だお
0012獅子王
2007/07/15(日) 17:22:00だけどあの英語漬けのサイトで一体どうやればダウンロードできるのかわかりません。
誰か暇つぶしついでに教えていただけませんか?
0013デフォルトの名無しさん
2007/07/15(日) 17:22:26use LWP::Simple;
print get 'http://pc11.2ch.net/test/read.cgi/tech/1184483810/';
0014デフォルトの名無しさん
2007/07/15(日) 17:23:55Javaかぁ、もっと大規模なのを作るときは使うけど、
簡単なツールレベルだと、ちょっと重く感じるな。
あと共有サーバーじゃ大概つかえないし。
0015デフォルトの名無しさん
2007/07/15(日) 17:25:40今はもっといいのがあるのではないかと思いながら、ぐぐっていると
ここみれば出来そうw
http://homepage3.nifty.com/hippo2000/perltips/LWP.html
0016デフォルトの名無しさん
2007/07/15(日) 17:28:06http://digit.que.ne.jp/work/index.cgi?Perl%E3%83%A2%E3%82%B8%E3%83%A5%E3%83%BC%E3%83%AB%2FLWP#i3
LWPで、「https://」で始まるSSL使用サイトにアクセスできますか?
編集
できます。
LWPはCrypt::SSLeayがインストールされていれば、自動的にSSL使用サイトへのアクセスも適切に処理してくれます。
アクセス先が「https://」で始まっていても、スクリプトを変える必要はまったくありません。
それどころか、プロトコルが「http」か「https」かということすら判定する必要はありません。
0017デフォルトの名無しさん
2007/07/15(日) 17:37:42もっといろいろできるであろうLWP::UserAgentを使ったコートだ
use LWP::UserAgent;
$ua = LWP::UserAgent->new;
$ua->agent("Mozilla/8.0");
$req = HTTP::Request->new(GET => 'http://pc11.2ch.net/test/read.cgi/tech/1184483810/');
$req->header('Accept' => 'text/html');
$res = $ua->request($req);
if ($res->is_success) {
print $res->content;
} else {
print "Error: " . $res->status_line . "\n";
}
0018デフォルトの名無しさん
2007/07/15(日) 17:55:210019デフォルトの名無しさん
2007/07/15(日) 17:59:35違いますよ。ただの2ちゃんねるブラウザですよ。^^;
0020デフォルトの名無しさん
2007/07/15(日) 18:13:22http://www.blunck.info/iehttpheaders/iehttpheaders.html
0021デフォルトの名無しさん
2007/07/15(日) 18:22:23まあ、それならそれでFirefoxのやつつかうけどさ
0022デフォルトの名無しさん
2007/07/15(日) 19:00:03POSTで以下の内容が送られるな。
submit=%8F%91%82%AB%8D%9E%82%DE
FROM=aaa
mail=bbb
MESSAGE=ccc
bbs=tech
key=10桁の数字
time=10桁の数字
そして、以下のクッキーを保存しろといってくる。意味はぐぐればわかるだろう
PON=俺のホスト; expires=Friday, 01-Jan-2010 00:00:00 GMT; path=/
HAP=7桁の数字; expires=Friday, 01-Jan-2010 00:00:00 GMT; path=/
JavaScriptが有効になっていると少し変わるようだ。
いつの間にか、NAME="aaa" MAIL="bbb" がセットされており、
送信するときに、上記のクッキーを送っている。まあ無視して良いだろう。
0023デフォルトの名無しさん
2007/07/15(日) 19:05:530024デフォルトの名無しさん
2007/07/15(日) 19:10:52そんなのがあるのかw あとでみてみる。
2ちゃんねるを知っている人には当たり前だろうが、
初めて書き込むときには、「上記全てを承諾して書き込む」がでる。
クッキー名hanaにmogeraが設定されているかどうかで判断されるようだ。
これは今現在の話なので将来は変わる?スレごとに違うのかな?
とりあえずクッキーを持たずに書き込むと飛ばされる「上記全てを承諾して書き込む」ページには
>>22で送られる内容にくわえ、hiddenでhana=mogeraが追加されている。(subject=""もあるがスレ立て時に使われるのか?)
そこらへんを見れば、クッキー名や値が変わっても対応できるのかもしれない。
0025デフォルトの名無しさん
2007/07/15(日) 19:16:15hana=mogera と
PON = 俺のホスト名 が
無ければいけないようだ。
hana=mogeraはさっきも書いたように同意するかどうか、
PONが変わる(つまり回線をつなぎなおしたとき)は確認画面に飛ばされる。
HAPはなんだろう?無くても書き込めるようだがまたセットさせられる。
さてぐぐるかw
0026デフォルトの名無しさん
2007/07/15(日) 19:28:22(外部のサーバーなしに)取得できるんかいな?
ルータのUPnP機能に問い合わせればわかるようなことを
以前見た気がするが・・・
まあ、2ちゃんねるに限れば、普通にアクセスして
戻ってきたクッキーをちゃんと記憶すればいいだろうけど。
0027デフォルトの名無しさん
2007/07/15(日) 20:00:15さてのんびりやるぞ!
これからの投稿予定は次のとおりとなっております。お楽しみに。
・POSTを使ったデータ送信
・クッキーの取得
・クッキーの送信
・書き込めた!
・やっぱ文字コードはUNICODEでしょ!
・BASIC認証がある場合は・・・
・それ以外認証ページは・・・
・httpsページにトライ!
・そしてphp版へ・・・
・そしてCurl版へ・・・
0028デフォルトの名無しさん
2007/07/15(日) 21:05:450029デフォルトの名無しさん
2007/07/15(日) 21:19:28Perl で書けたのであれば Curl はやらなくて良いと思うよ。
それより書き込みだけじゃなく、スレ立ても出来る様になると嬉しいんじゃない?
0030デフォルトの名無しさん
2007/07/15(日) 21:25:47楽しいなあ
楽しいなあ
0031デフォルトの名無しさん
2007/07/15(日) 22:04:46そもそも人にきかなきゃわからんレベルの人間がやるものでもないし。
0032デフォルトの名無しさん
2007/07/15(日) 22:08:020033デフォルトの名無しさん
2007/07/15(日) 22:22:52自分でも言ってる意味が分かってないから、反論しても無駄
0034デフォルトの名無しさん
2007/07/15(日) 22:28:280035デフォルトの名無しさん
2007/07/15(日) 22:51:57そう子供たちに教えるべきだね。
0036デフォルトの名無しさん
2007/07/15(日) 23:46:110037デフォルトの名無しさん
2007/07/16(月) 00:13:27自己紹介乙!
0038test
2007/07/16(月) 02:34:110039デフォルトの名無しさん
2007/07/16(月) 02:34:570040デフォルトの名無しさん
2007/07/16(月) 08:42:430041デフォルトの名無しさん
2007/07/16(月) 09:38:590042デフォルトの名無しさん
2007/07/16(月) 13:34:110043デフォルトの名無しさん
2007/07/16(月) 15:27:230044デフォルトの名無しさん
2007/07/16(月) 15:34:370045デフォルトの名無しさん
2007/07/16(月) 16:25:06テスト用に、サーバーに送信したデータをそのまま表示するだけのphpコード
ちゃんと送られているかこれで確認!
<?php
header("Content-Type: text/plain");
print "[REQUEST]\n"; print_r(apache_request_headers());
print "[SERVER]\n"; print_r($_SERVER);
print "[GET]\n"; print_r($_GET);
print "[POST]\n"; print_r($_POST);
print "[COOKIE]\n"; print_r($_COOKIE);
print "[FILES]\n"; print_r($_FILES);
?>
IEはダウンロードしやがるぜ。けっ
0046デフォルトの名無しさん
2007/07/16(月) 20:07:51スクリプト(>>45でいい)に向けてpostするように。
use LWP::UserAgent;
$ua = LWP::UserAgent->new;
$ua->agent("Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; SV1)");
$req = HTTP::Request->new(POST => 'http://www.example.com/test.php?getdata=gettest');
$req->header(
'Accept' => '*/*',
'Accept-Language' => 'ja-JP,en-US;q=0.5',
'Referer' => 'http://www.example.com/',
);
$req->content_type('application/x-www-form-urlencoded');
$req->content('postdata=posttest');
print $ua->request($req)->as_string;
0047デフォルトの名無しさん
2007/07/16(月) 21:23:570048デフォルトの名無しさん
2007/07/16(月) 21:31:30http://age.s22.xrea.com/talk2ch/
0049デフォルトの名無しさん
2007/07/16(月) 22:12:370050デフォルトの名無しさん
2007/07/16(月) 22:22:18日付に直すと Sun, 02 Jan 2005 17:55:08 GMT なんだが、
どこから取得すればいいのだ?
htmlのフォームから取得できるのはわかるが・・・
0051デフォルトの名無しさん
2007/07/16(月) 22:37:290052デフォルトの名無しさん
2007/07/16(月) 22:38:340053デフォルトの名無しさん
2007/07/16(月) 22:40:050054デフォルトの名無しさん
2007/07/16(月) 22:41:190055デフォルトの名無しさん
2007/07/16(月) 22:42:240056デフォルトの名無しさん
2007/07/16(月) 23:03:500057デフォルトの名無しさん
2007/07/17(火) 00:09:520058デフォルトの名無しさん
2007/07/17(火) 01:46:580059デフォルトの名無しさん
2007/07/17(火) 08:54:340060デフォルトの名無しさん
2007/07/26(木) 18:14:070061デフォルトの名無しさん
2007/07/27(金) 01:20:27書き込めるようになって、飽きました。
0062デフォルトの名無しさん
2007/07/27(金) 01:49:010063デフォルトの名無しさん
2007/07/27(金) 14:21:010064ヒッキーの達人 ◆MEIDO...W.
2007/07/29(日) 03:50:50#!/usr/bin/perl
use strict;
my $hello = "hello, world";
my $tmp = './hello.world';
open OUT, "> $tmp" or die "$!";
flock OUT, 2;
print OUT $hello;
close OUT;
open IN, $tmp or die "$!";
flock IN, 2;
my @in = <IN>;
close IN;
unlink $tmp;
foreach(@in){
s/$hello/herro, world/i;
}
my $res = `ping -c 4 www.google.com`;
undef $res;
print $hello;
my @n = qq|\n|;
foreach(@n){
print;
}
0065デフォルトの名無しさん
2007/07/29(日) 20:40:580066デフォルトの名無しさん
2007/07/29(日) 20:52:030067デフォルトの名無しさん
2007/09/08(土) 00:57:04Age2ch Part14
http://pc11.2ch.net/test/read.cgi/software/1118219419/l50
0068デフォルトの名無しさん
2007/09/08(土) 14:36:00弟子は師匠の筆の跡を盗むもんだ。
0069デフォルトの名無しさん
2007/10/04(木) 13:01:14いろいろな言語でこれをするならどれが一番きれいだと思う?
0070デフォルトの名無しさん
2007/10/05(金) 09:53:410071デフォルトの名無しさん
2008/01/10(木) 11:13:45これってどうやって調べたん?
0072デフォルトの名無しさん
2008/01/10(木) 12:04:210073デフォルトの名無しさん
2008/01/10(木) 23:37:440074デフォルトの名無しさん
2008/01/11(金) 09:22:430075デフォルトの名無しさん
2008/01/11(金) 11:51:260076デフォルトの名無しさん
2008/01/15(火) 05:41:470077デフォルトの名無しさん
2008/01/15(火) 05:42:50だからアク禁くらってもレンタルサーバーにcgiぶっこめばいくらでも書き込める。
0078デフォルトの名無しさん
2008/01/15(火) 05:45:200079デフォルトの名無しさん
2008/01/15(火) 05:46:250080デフォルトの名無しさん
2008/01/28(月) 11:56:22008180
2008/01/28(月) 12:02:46誤爆した。
008280
2008/01/28(月) 12:04:16誤爆した。
008380
2008/01/28(月) 12:09:40誤爆した。
0084デフォルトの名無しさん
2008/01/31(木) 05:50:430085デフォルトの名無しさん
2008/01/31(木) 05:53:430086デフォルトの名無しさん
2008/03/19(水) 02:51:43を保存して
ダブルクイックすると
『インストール パッケージを開くことができませんでした。アプリケーションベンダに問い合わせ、このパッケージが有効なWindowsインストーラパッケージであることを確認してください。』 と出るのですが
何が問題あるのでしょうか
0087うっかり八兵衛
2008/03/19(水) 06:04:17インストーラパッケージが壊れていまし。
保存のインスト不良でした
早とちり
で、しまったシマッタ!島倉千恵子!
(;^_^A フキフキ
0088デフォルトの名無しさん
2008/03/19(水) 07:27:010089デフォルトの名無しさん
2008/03/29(土) 00:38:42亀レスだがそれはファイルが壊れてるだけ。
俺もこの前WIN再インスコしたときになった。
activeperlのある鯖が不安定っぽいからリジューム機能のついてるツール使ってダウソしたほうがいいよ。
0090デフォルトの名無しさん
2008/05/14(水) 13:50:090091デフォルトの名無しさん
2008/05/16(金) 17:59:540092デフォルトの名無しさん
2008/05/16(金) 20:42:210093デフォルトの名無しさん
2008/08/22(金) 22:09:350094デフォルトの名無しさん
2008/08/22(金) 22:10:360095デフォルトの名無しさん
2008/08/31(日) 11:33:21use warnings;
use strict;
use WWW::Mechanize;
my $url = 'http://pc11.2ch.net/test/read.cgi/tech/1184483810/';
my $mail = 'sage';
my $text = 'Hellow World;
my $mech = WWW::Mechanize->new;
$mech->agent_alias('Linux Mozilla');
$mech->get($url);
$mech->submit_form(
form_number => 2,
fields=>{
FROM => '',
mail => $mail,
MESSAGE => $text,
},
);
print $mech->content;
$mech->submit;
print $mech->content;
なんで、これでじゃかきこめないわけ?
0096デフォルトの名無しさん
2008/09/07(日) 15:18:170097デフォルトの名無しさん
2008/09/15(月) 20:22:150098デフォルトの名無しさん
2008/10/10(金) 18:19:280099デフォルトの名無しさん
2008/12/07(日) 20:49:28use utf8;
binmode STDOUT => ":encoding(cp932)";
binmode STDIN => ":encoding(cp932)";
use open IO => ":encoding(cp932)";
use Win32::IEAutomation;
use Encode;
$ie = Win32::IEAutomation->new( visible => 1, maximize => 0);
$ie->gotoURL('http://pc11.2ch.net/test/read.cgi/software/1118219419/l1n');
$ie->getTextBox('name:', 'FROM')->SetValue(encode('cp932', "名無しさん@お腹すいた") );
$ie->getTextBox('name:', 'mail')->SetValue('sage');
$ie->getTextArea('name:', 'MESSAGE')->SetValue(encode('cp932', ">>845\nソースきぼ〜ん") ) ;
$ie->getButton('name:', 'submit')->Click(1) ;
sleep(10);
$ie->getButton('name:', 'submit')->Click(1) ; # 初回投稿時の確認ウィンドウ用
0100デフォルトの名無しさん
2008/12/10(水) 02:24:590101デフォルトの名無しさん
2008/12/10(水) 02:28:250102デフォルトの名無しさん
2008/12/10(水) 02:40:040103デフォルトの名無しさん
2008/12/10(水) 02:44:020104名無しさん@お腹すいた
2008/12/10(水) 02:46:300105hage
2008/12/10(水) 03:14:510106hage
2008/12/10(水) 03:26:370107hage
2008/12/10(水) 03:34:420108test
2008/12/10(水) 03:35:280109hage
2008/12/10(水) 03:36:040110hage
2008/12/10(水) 05:40:530111デフォルトの名無しさん
2009/01/19(月) 09:19:050112デフォルトの名無しさん
2009/01/19(月) 11:23:50スレ立てました。
PHPを使って2ちゃんねるにHello Worldを書き込む
http://pc11.2ch.net/test/read.cgi/tech/1232331701/l50
0113デフォルトの名無しさん
2009/01/19(月) 14:16:06おお、ありがとうございます!! そのやり方も教えて下さい!!
0114デフォルトの名無しさん
2009/02/08(日) 18:28:520115デフォルトの名無しさん
2009/04/09(木) 22:28:090116デフォルトの名無しさん
2009/05/31(日) 23:18:290117デフォルトの名無しさん
2009/06/07(日) 15:00:390118デフォルトの名無しさん
2009/07/11(土) 12:55:520119デフォルトの名無しさん
2009/07/11(土) 19:26:210120デフォルトの名無しさん
2009/07/11(土) 19:28:020121デフォルトの名無しさん
2009/07/11(土) 19:39:100122デフォルトの名無しさん
2009/07/11(土) 19:42:16イヤッホウ
0123デフォルトの名無しさん
2009/07/11(土) 22:47:560124デフォルトの名無しさん
2009/07/22(水) 20:56:080125デフォルトの名無しさん
2009/07/22(水) 20:58:490126デフォルトの名無しさん
2009/07/22(水) 20:59:300127デフォルトの名無しさん
2009/07/22(水) 21:00:120128デフォルトの名無しさん
2009/07/22(水) 21:09:140129デフォルトの名無しさん
2009/07/22(水) 21:12:000130デフォルトの名無しさん
2009/07/22(水) 21:15:490131デフォルトの名無しさん
2009/07/22(水) 21:17:590132デフォルトの名無しさん
2009/07/22(水) 21:18:060133デフォルトの名無しさん
2009/07/22(水) 21:23:400134デフォルトの名無しさん
2009/07/22(水) 21:43:070135デフォルトの名無しさん
2009/07/23(木) 17:33:470136デフォルトの名無しさん
2009/07/23(木) 17:48:110137デフォルトの名無しさん
2009/07/28(火) 22:22:060138デフォルトの名無しさん
2009/07/29(水) 00:31:09>>> message
'What's up, Mr?
>>> print message
Wha's up, Mr?
0139デフォルトの名無しさん
2009/07/29(水) 00:33:05>>> message
'What's up, Mr?'
>>> print message
Wha's up, Mr?
0140デフォルトの名無しさん
2009/07/29(水) 00:45:100141デフォルトの名無しさん
2009/07/29(水) 00:54:46ショートムービー とか つくる ソフトをつくることなんだ
それを 発展させて 人工知能系に つなげる
英国f1とかの大画面モニター 1日中 遊んでるらしいから
ジェット旅客機の 飛行中の映画モニターに映す
世界をつなげる ソフト
世界が一体感をもてる 世界平和に貢献できるようなそんな気がする
それと コンピューター工学を基礎から考えることなんだ。
ぼくは タイムマシンとかつくって 現在光速で飛行中 自室のコックピットから 書き込んでる だから 時間はいっぱいあるんだ。
0142デフォルトの名無しさん
2009/07/31(金) 01:36:37それがどうした?
0143デフォルトの名無しさん
2009/10/28(水) 21:54:100144test
2009/11/05(木) 18:26:430145デフォルトの名無しさん
2009/11/05(木) 18:45:290146デフォルトの名無しさん
2009/11/05(木) 18:48:070147デフォルトの名無しさん
2010/01/05(火) 20:34:240148デフォルトの名無しさん
2010/01/05(火) 20:37:010149デフォルトの名無しさん
2010/01/06(水) 01:23:020150デフォルトの名無しさん
2010/01/26(火) 21:57:570151デフォルトの名無しさん
2010/03/31(水) 21:14:230152デフォルトの名無しさん
2010/04/01(木) 14:11:360153デフォルトの名無しさん
2010/04/05(月) 11:32:310154デフォルトの名無しさん
2010/04/05(月) 11:38:090155デフォルトの名無しさん
2010/04/05(月) 11:41:140156デフォルトの名無しさん
2010/04/05(月) 11:42:300157デフォルトの名無しさん
2010/04/05(月) 12:56:540158デフォルトの名無しさん
2010/04/07(水) 14:39:010159デフォルトの名無しさん
2010/04/07(水) 17:06:070160デフォルトの名無しさん
2010/05/25(火) 20:29:400161デフォルトの名無しさん
2010/05/25(火) 21:16:320162デフォルトの名無しさん
2010/05/25(火) 21:44:050163デフォルトの名無しさん
2010/05/26(水) 16:22:330164デフォルトの名無しさん
2010/05/26(水) 18:22:560165デフォルトの名無しさん
2010/05/27(木) 23:15:580166デフォルトの名無しさん
2010/05/27(木) 23:22:330167デフォルトの名無しさん
2010/05/27(木) 23:24:070168デフォルトの名無しさん
2010/05/27(木) 23:30:220169デフォルトの名無しさん
2010/05/27(木) 23:34:250170デフォルトの名無しさん
2010/05/27(木) 23:45:370171デフォルトの名無しさん
2010/05/28(金) 00:28:210172デフォルトの名無しさん
2010/09/25(土) 13:31:590173デフォルトの名無しさん
2010/09/25(土) 16:10:290174デフォルトの名無しさん
2010/10/16(土) 20:27:230175デフォルトの名無しさん
2010/10/19(火) 16:03:090176デフォルトの名無しさん
2010/10/21(木) 18:08:38感動した。
0177デフォルトの名無しさん
2010/12/01(水) 14:49:230178デフォルトの名無しさん
2010/12/01(水) 17:40:390179デフォルトの名無しさん
2010/12/07(火) 16:11:450181デフォルトの名無しさん
2010/12/30(木) 20:09:050182デフォルトの名無しさん
2011/01/21(金) 06:06:28来年こそ!来年こそこれを買う!
0183182
2011/01/21(金) 06:07:120184デフォルトの名無しさん
2011/01/21(金) 06:29:51あったかそうだ
0185デフォルトの名無しさん
2011/01/23(日) 02:34:590186デフォルトの名無しさん
2011/01/23(日) 02:36:170187デフォルトの名無しさん
2011/02/16(水) 14:01:150188test
2011/04/17(日) 23:30:39.260191デフォルトの名無しさん
2011/04/23(土) 14:39:25.47もうperl使って書き込む人はいないのか
0192縺ッ繧阪�
2011/05/18(水) 10:16:29.070193縺ッ繧阪�
2011/05/18(水) 10:17:24.740194縺ッ繧阪�
2011/05/18(水) 10:20:30.790195縺ッ繧阪�
2011/05/18(水) 10:21:20.630196縺ッ繧阪�
2011/05/18(水) 10:21:46.950198デフォルトの名無しさん
2011/06/29(水) 19:43:58.100199デフォルトの名無しさん
2011/06/29(水) 19:49:13.060200デフォルトの名無しさん
2011/11/20(日) 14:26:58.36■ このスレッドは過去ログ倉庫に格納されています