HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2015
0428
名無し未解決の質問だけ抽出できる機能が欲しいですね……4解決


名無し

リンク

2015/4/28(Tue) 18:35:37|NO.68835

この掲示板で未解決の質問だけ探したい場合、現状だと、
いちいちページをクリックして逐一確認する必要があるので面倒に感じます。
一応、未解決の質問だけリストアップするプログラムは作りましたが、
こんなのが要らなくなるように機能追加していただけませんかね……?

#include "hspinet.as" //定数宣言 #const kPages 15 #const kThreads 20 string1 = "<tr height=\"20\">" strlen1 = strlen(string1) string2 = "margin-top:1px;\">" strlen2 = strlen(string2) string3 = "</a>" strlen3 = strlen(string3) sdim string4, 1024 string4 = "<img src=\"../images/new.gif\" alt=\"\" height=\"11\" width=\"21\" border=\"0\" style=\"margin-left:2px;\">" strlen4 = strlen(string4) string5 = "num=" strlen5 = strlen(string5) //バッファを宣言 sdim output, 32000 output = "件名\tURL\n" sdim croped_text, 32000 sdim question_text, 32000 sdim subject, 1024 //画面描画 screen 0, 400, 400 mesbox output, 400, 400, 4 //DLおよび解析処理 netinit repeat kPages title "ダウンロード中……(" + (cnt + 1) + "/" + kPages + ")" //スレッド一覧を取得 neturl "http://hsp.tv/play/" netrequest_get "pforum.php?pn=" + cnt repeat netexec res if(res != 0) :break wait 5 loop if(res < 0) :stop netgetv retval //ShiftJIS、かつCR+LFに形式変換 nkfcnv decoded, retval, "-c", -1, 32000 ; notesel decoded :notesave "temp1.txt" //HTMLを解析して、質問者・件名・URLを取得する ;検索範囲を限定する p1 = instr(decoded, ,"mark_res") p2 = instr(decoded, p1 ,"mark_page") if((p1 == -1) || (p2 == -1)) :continue croped_text = strmid(decoded, p1, p2) ; notesel croped_text :notesave "temp2.txt" ;特徴的な文字列からHTMLを解析する croped_text += string1 p1 = instr(croped_text,,string1) for k, 0, kThreads ;1件づつ問題を切り出す p2 = instr(croped_text, p1 + strlen1, string1) question_text = strmid(croped_text, p1, p2) ; notesel question_text :notesave "temp3.txt" ;未解決問題であることを確認する if(instr(question_text,,"icon_mikaiketsu") != -1){ ;件名を取得する p3 = instr(question_text,,string2) + strlen2 p4 = instr(question_text, p3, string3) subject = strmid(question_text, p3, p4) strrep subject, string4, "" output += subject + "\t" ;URLを取得する p3 = instr(question_text,,string5) + strlen5 p4 = instr(question_text, p3, "\"") url = strmid(question_text, p3, p4) output += "http://hsp.tv/play/pforum.php?mode=all&num=" + url + "\n" } p1 += p2 + strlen1 next loop //出力 title "完了!" objprm 0, output stop



この記事に返信する


スペース(HSP歴3年)

リンク

2015/4/28(Tue) 18:45:25|NO.68836

同感です。もういっそ専ブラみたいなのつくろっかな・・・



kanamaru

リンク

2015/4/28(Tue) 19:21:05|NO.68839

専門ブラウザを作ることに賛成です。
しかし、hsp掲示板はwebサイトとして提供されています。
もし本当に作るのなら、
名無しさんのように
phpの分析が必要になります。(htmlもだけど)
その分析部分をどうにかできるかが問題になってくると思います。
おにたまさんがもしみていたら、
hsp掲示板のwebAPIを提供していただけるとありがたいです。
そうしたら新規書き込みなども機能としてできるので。



skyblue

リンク

2015/4/29(Wed) 10:17:09|NO.68875

>phpの分析が必要になります。(htmlもだけど)
ソースを見た限りではHTMLとCSSしか使われていません。
PHPの解析は実は必要ありません。
たいていのサイトはHTML,CSS,JSの三つを解析する事ができたら
動的サイトも含めて解析できます。
専用ブラウザを作るのは難しいです。
OSに依存しているものの代表です。
専ブラの仕様をどうするかによって難しさが変わってきます。
OSに依存するものとしてネットワークやGUIがありますし、
使用する言語によって利用者の範囲を狭めてしまいます。



スペース(HSP歴3年)

リンク

2015/4/29(Wed) 14:20:57|NO.68880

専ブラ作れそうなので一応作ってみます。
書き込みプログラムは他の方が作っていますし、
htmlの加工は前に結構やったことがあるので。



ONION software Copyright 1997-2023(c) All rights reserved.