△▲ WebProg 初心者の質問 Part6 ▼▽
945 :
nobodyさん:04/01/04 02:33 ID:sds35WY+
pole=投票
947 :
nobodyさん:04/01/04 04:07 ID:kKqb3xwk
サーバーからHTMLを取得する方法をおしえてください。
それで特定の文字列があったら抽出したいです。
>>948 ありがとうございます。
サンプルとかリファレンスが全部英語なのですが日本語に直された物とかってあるのでしょうか?
libwww-perlをダウンロードしてます。
>>949 「日本語の検索結果のみ表示」をクリックしる
952 :
初心者:04/01/04 16:21 ID:o6NYNUbL
Javaアブレットで作成した画面が出ません。
他のパソコンでは出るんですがこのパソコンでは出ません。
何をインストールしたら良いんですか?
ちなみにOSはWindowsXPです。
>>952 XPはJavaVMが入ってないらしいからねぇ。
以前にインストールした記憶が無いなら
http://java.com/ja/ から JRE (java runtime environment)をインストール。
PC初心者板ネタだな(w
954 :
初心者:04/01/04 16:42 ID:o6NYNUbL
>>953 ありがとうございます。
インストールしたら画面が出ました。
>PC初心者板ネタだな(w
何処で質問したら良いのか判らなかったのですみません。
$progname =~ s,.*/,,; # use basename only
$progname =~ s/\.\w*$//; #strip extension if any
これはどういう処理でしょうか?
>>956 ベースとなる名前だけを使う。
拡張子を除去する。
>>957 ありがとうございます。
上のはファイル名の禁止のを使わないようにで
下のs/\.\w*$//の\w*$この部分はどうしてるのでしょうか?
今、ファイルの更新日付を取得して、ファイル名を
(元のファイル名)_(日付).(元の拡張子)
と言うようにしたいのですが、どうすればいいでしょうか
959 :
nobodyさん:04/01/05 02:01 ID:pcbk9dyi
$textを読み込んでttpもしくはhttpを見つけて、
それのURLを$urlに入れるにはどうしたらいいですか?
ttpを探してもttpしか代入できなくて、そのあとの〜〜〜.htmまで代入したいです
961 :
nobodyさん:04/01/05 02:28 ID:pcbk9dyi
963 :
nobodyさん:04/01/05 02:37 ID:pcbk9dyi
あの、申し訳ないのですが、掲示板とかにアドレスみたいなのを書かれて、いろんなのがあるのでそれを全部拾いたいのです
2chとかもhttpをリンクにしますよね?
あんな感じのは作成不能でしょうか?
964 :
nobodyさん:04/01/05 03:18 ID:pcbk9dyi
$text_regex = q{[^<]*};
$result = ''; $skip = 0;
while (#line =~ /($text_regex)($tag_regex)?/gso) {
last if $1 eq '' and $2 eq '';
$text_tmp = $1;
$tag_tmp = $2;
if ($skip) {
$result .= $text_tmp . $tag_tmp;
$skip = 0 if $tag_tmp =~ /^<\/[aA](?![0-9A-Za-z])/;
} else {
$text_tmp =~ s{($http_URL_regex|$ftp_URL_regex|($mail_regex))}
{my($org, $mail) = ($1, $2);
(my $tmp = $org) =~ s/"/"/g;
'<A HREF="' . ($mail ne '' ? 'mailto:' : '') . "$tmp\">$org</A>"}ego;
$result .= $text_tmp . $tag_tmp;
$skip = 1 if $tag_tmp =~ /^<[aA](?![0-9A-Za-z])/;
if ($tag_tmp =~ /^<(XMP|PLAINTEXT|SCRIPT)(?![0-9A-Za-z])/i) {
#line =~ /(.*?(?:<\/$1(?![0-9A-Za-z])$tag_regex_|$))/gsi;
$result .= $1;
}
}
http://www.din.or.jp/~ohzaki/perl.htm#AutoLinkをみて こうしたのですが、上から5行目でlast ifのエラーが出ます。
どうしてでしょうか?$tag_regexは別途にまとめて記載してます
965 :
nobodyさん:04/01/05 03:25 ID:8MhqUfqu
前から気になっていたんですが、Perlにしろ、PHPにしろ
みなさん、関数の名前ってだいたい覚えているんですか?
それか「この個所はこういう処理が必要だったな・・・」と
考えつつ、リファレンスを見てプログラムを構成するのですか?
関数の数ってかなりあるし、他言語を複数取得している人って
どうやって覚えているのかと思いまして。
Perl使いはほぼ全部関数覚えてるんじゃないかな
PHPは全部覚えるのは無理だろう(増えるし変わる
>それか「この個所はこういう処理が必要だったな・・・」と
>考えつつ、リファレンスを見てプログラムを構成するのですか?
いろんな言語使う人はそんな感じだと思うよ。
967 :
nobodyさん:04/01/05 04:41 ID:pcbk9dyi
すいません変数名を間違えてました。
@foo = stat('hoge.txt');# statでファイル情報取得
$atime = localtime($foo[8]);# アクセス日
これで、Mon Jan 5 02:54:14 2004こういうタイプの日付が取得できるのですが
これを西暦月日時間分としたいのですが、どうしたらいいですか?
>>969 う〜ん、どうしてもCtime形式の日付しか取得できないのですがなぜでしょう?
ファイルの情報からとってるからでしょうか?
($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime($foo[8]);
972 :
nobodyさん:04/01/05 14:25 ID:CqPLyr7e
すみません、お聞きしたいのですが、
2chの鯖監視所みたいなperlかphpスクリプトはあるでしょうか?
ググったんですがなかなか見つからなくて…
>>970 Perlは、左辺がスカラー($)か配列(@)かで動作の変わる関数が多いから、
注意すれ。
wantarrayなんてのが最初から用意されてるからな。
>>973 @foo = stat($file);# statでファイル情報取得
($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime($foo[8]);# 更新時刻
$foo = sprintf("%02d\%02d\%02d\%02d", $mon+1,$mday,$hour,$min);
こんな感じでできますた。
配列とかはよくわかってないので、試行錯誤でやってます。
URLの抽出で
> # 文書 $text から http URL を抽出して @http に格納する
> @http = $text =~ /s?https?:\/\/[-_.!~*'()a-zA-Z0-9;\/?:\@&=+\$,%#]+/g;
とあるので、やってみたのですが、
Unrecognized character \x81
のエラーが帰ってきます。
どこに\x81と言うのがないので訳がわかりません。
どうかよろしくお願いします。
\x81 でエラったときの99%は全角スペース混入が原因だが、残り1%はわからん
978 :
976:04/01/06 02:36 ID:???
>>977 全角スペース入ってないですよねぇ・・
googleしてもこういうプログラムみたいなのは、分解されてちゃんと検索できないし・・
これで他の人はできてるのかな?
>>978 そこじゃなくて、別の部分に入ってるに一票。
>>979 あるあるw
似たような(似てない?)すごく初歩的なミスなのだが
print <<"HTML";
hoge
hogehoge
HTML
みたいにしてあったとき、
HTMLの横にタブが入っていたらしく、
わずか100行くらいのスクリプトを直すのに
30分くらい迷ってしまったことがあった(鬱
家のPCならタブも表示されるのだが
その時外出先で手頃なテキストエディタがなくメモ帳でやっててはまった。
ほんと、鬱になったな・・・
なんか自分で書いててださすぎる・・・逝ってくる
981 :
kenc:04/01/07 00:32 ID:LLCkRcKV
言語:perl
ヘッダを下記のようにして、gzip圧縮で出力しています。
WindowsのIEでは問題なく読めているのですが、
MacのIEではgzipが不明な出力として処理できず、
アプリケーションで開くダイアログが表示されてしまいます。
Macではサポートを諦めるべきでしょうか?
今のところ端末が携帯だと無圧縮で送っているので、携帯と一緒で
無圧縮で送るしかないでしょうか?経験者の方がいたらアドバイスをお願いします。
print "Content-type: text/html\n";
print "Content-encoding: gzip\n";
print "\n";
Accept-Encoding: gzip があるかないかで分ければ?
質問です。
アイコンが設定できるオススメのCGIの掲示板ってありますか?
986 :
nobodyさん:04/01/07 16:06 ID:+LjjP/pC
掲示板で連続投稿を防ぐのは、IPを見ればいいんでしょうか。
次スレ立ててみるかな
990 :
nobodyさん:04/01/07 16:26 ID:AWSfK2M2
993 :
nobodyさん:04/01/08 02:51 ID:D7mieaWe
こっち上げとくか
994 :
ぉ:
c⌒っ ゚ν゚)φ
もうすぐ終わり・・・と。