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


HSPTV!掲示板


未解決 解決 停止 削除要請

2015
0828
bIEコンポーネントを使用しないでHTML等をパーサ/表示する方法8未解決


b

リンク

2015/8/28(Fri) 22:08:50|NO.71103

例えばこのスクリプト

axobj IE, "Shell.Explorer", ginfo_winx, ginfo_winy IE->"Navigate" "http://www.google.co.jp"
これはIEコンポーネントを使用してgoogleを表示していますが右クリック時にIEのメニューが出てきたり
表示が古かったり..と これをどうにかできないかなと
単純にHSPでパーサとかも面白いかなと思っています。
以下のコードでHTMLを取得し、

#include "hspsock.as" #define HTTPSERVER "www.hsp.tv" ;HTTPサーバ #define HTTPPORT 80 ;HTTPポート #define HTTPPATH "/play/pforum.php" ;受信ファイルパス #define BUFSIZE 1024 ;受信バッファサイズ #define LOCALPATH "pforum.php" ;保存ファイル名 sockopen 0,HTTPSERVER,HTTPPORT if stat!=0 : mes "接続失敗" :end sockput "GET "+HTTPPATH+" HTTP/3.0\nHost:"+HTTPSERVER+"\n\n",0 sdim Data,BUFSIZE repeat repeat await sockcheck 0 if stat==0 : break if cnt==9 : goto *finish loop sdim ReceiveData,BUFSIZE sockget ReceiveData,BUFSIZE,0 Data+=ReceiveData loop *finish sdim Tmp,BUFSIZE sdim WriteData,BUFSIZE notesel Data repeat noteget Tmp,cnt if Tmp="" : NullLine=cnt+1 : break loop repeat noteinfo(0)-NullLine,NullLine noteget Tmp,cnt WriteData+=Tmp+"\n" loop mesbox WriteData ,ginfo_winx,ginfo_winy
これを外部DLL(さすがにHSP単体では無理だと思うので)で処理できるでしょうか?



この記事に返信する


skyblue

リンク

2015/8/29(Sat) 12:19:14|NO.71109

>これを外部DLL(さすがにHSP単体では無理だと思うので)で処理できるでしょうか?
外部を経由しなくても処理できます。ただし難しいですが・・・・・・



b

リンク

2015/8/29(Sat) 15:14:24|NO.71111

>外部を経由しなくても処理できます。ただし難しいですが・・・・・・

確かにそうですが、php、html,,,,と数百の命令を読み込むのは時間がかかるうえ重くなるような気がしたので..



skyblue

リンク

2015/8/30(Sun) 11:00:35|NO.71126

PHPでつかられているページのほとんどはHTMLを吐き出します。
それにあえてHTML,CSS,JavaScriptだけしか対応しないブラウザーとか言うのもありです。



くちくん

リンク

2015/8/30(Sun) 14:03:07|NO.71127

IEがダメならFireFox等のブラウザで使用されるGeckoエンジンを使うとか。

http://ftp.mozilla.org/pub/mozilla.org/xulrunner/releases/(バージョン番号)/runtimes/
( http://ftp.mozilla.org/pub/mozilla.org/xulrunner/releases/ )
にて配布されている「xulrunner-(バージョン).en-US.win32.zip」をダウンロードして、
任意のフォルダに解凍したら、まず「mozctlx.dll」があるか確かめてください。
ない場合は、前のバージョンを確認して下さい。
あった場合、 regsvr32 (先ほどダウンロードしたフォルダ)\mozctlx.dll を
実行すると、ActiveXコントロールとして登録されます。
エラーコード「0x80070005」の場合、管理者権限で実施してください。

axobj gecko, "Mozilla.Browser.1",640,480 ; 640,480は任意のサイズに(x,y) gecko->"Navigate" "http://hsp.tv/" ; Navigateの他にGoBackとかGoForWardも使えました。
上記スクリプトで、Geckoエンジンを使ったものになります。
(Windows10 Home + XulRunner Ver 1.9で確認済み)
質問の内容に合わなかったらすみません。



b

リンク

2015/8/30(Sun) 14:31:27|NO.71129

Geckoも考えてみます。

そもそもHTML等をパースしてくれるdllはあるのでしょうか?



kanamaru

リンク

2015/8/30(Sun) 17:59:00|NO.71136

なんか皆さん難しく考えてません?
IEコンポーネントの見た目が嫌なだけなんだから、
newcomからのDOMでやりたいことは出来ると思いますよ。
まあ、IEコンポーネントを使いたくないのなら話は別ですが。
それでもinnerHTMLでhtmlは取得できるし、特定のタグの中身を取得というのもできます。
表示部分だけ自前でやるとして。
さらにコンテキストメニューをwinAPIでつけたりするのもいいですね。
問題はJavaScriptとCSSですが、そればかりは自前処理しか無さげですが、
comでいいのがないかな?



b

リンク

2015/8/30(Sun) 22:23:24|NO.71146

kanamaru
さんいいやり方ですね。

最後に質問です。HSPでWebKitは使用できるのでしょうか?



kanamaru

リンク

2015/8/30(Sun) 22:42:19|NO.71147

webkitですか。
確か使えたと思います。
ただ、サンプルも少ない故、難しいと思います。
geckoか僕の方法をお勧めします。
で、geckoは確か、もっと簡単に使う方法があった気がします。
探してみます。
あと、先ほどの投稿は少し失礼な口調になっていたようです。
すいませんでした。



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