初心者のFileMaker pro Q&A (旧掲示板)

みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。

1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)

You are not logged in.

Announcement

新しい掲示板は、こちら:https://fm-aid.com/forum/t/filemaker


#1 2015-06-30 17:04:02

やまほん
Member

Javascriptで生成後のHTMLを取得

タイトルのままですが、Javascriptで生成後のHTMLを取得したいです。

あるホームページがあり、そのHTMLを取得し、そのHTML内のある部分を抜き出して利用していました。
今回、そのホームページの仕様が変更され、抜き出したい部分がJavascriptでテキスト生成されるようになりました。
抜き出そうとしてもその箇所はスクリプト名?だけが書かれており、目的のものが取り出せません。
なにか方法はあるでしょうか?

Pro12 windows7です。

Offline

#2 2015-06-30 19:31:32

qb_dp
Member

Re: Javascriptで生成後のHTMLを取得

</HTML>の出現を待って
GetLayoutObjectAttribute ( Webビューアのオブジェクト名 ; "Content" )
で、HTMLのソースを取得しているのでしょうか?

JavaScriptで要素を生成している場合、</HTML>の出現より後で目的の要素が出現しているのでは?
・一時停止で数秒まってから、取得する。
・</HTML>では、なく目的の要素の出現を待つ。
・スクリプト:URLから挿入 で取得出来る可能性もあるので試してみる。
とか?
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
2015/07/01 追記
あ~。なんか誤った情報を記載してしまったので、訂正しておきます。(妙な勘違いをしてしまいました。)
JavaScriptで生成した要素は、
「GetLayoutObjectAttribute ( Webビューアのオブジェクト名 ; "Content" )」や
「スクリプト:URLから挿入」では、取得できません。

Last edited by qb_dp (2015-07-01 09:42:12)

Offline

#3 2015-06-30 20:00:49

Hiro
Member

Re: Javascriptで生成後のHTMLを取得

Windows環境なら可能です。

JavaScriptで生成された内容は、同じくJavaScriptなら比較的容易に抽出できますから、
その結果をクリップボード経由で受け渡すJavaScriptを組んでURL送信すると良いでしょう。

そのホームページのHTMLが具体的に分かれば、JavaScriptの内容を具体的に示せるかもしれません。

Offline

#4 2015-06-30 21:14:44

やまほん
Member

Re: Javascriptで生成後のHTMLを取得

qb_dpさん、ありがとうございます。
</HTML>より前です。
GetLayoutObjectAttributeでだめで、URLから挿入でもダメでした。

Offline

#5 2015-06-30 21:17:56

やまほん
Member

Re: Javascriptで生成後のHTMLを取得

Hiroさん、ありがとうございます。

そのページは例えば↓になります。
https://trecolle.yjfx.jp/pilot/details/km8dh

ページの上ほどに ●●人/○○人 という部分があるかと思いますが、その部分を抽出したいんです。
これってJavascriptかなと思ってそう書いたのですが、Javascriptではないんでしょうか?
HTMLは20年前にちょっとかじったくらいで、現在の複雑なものはほとんど構造が理解できてません

qb_dpさんの書き込みも参考にして、URLから挿入とかもいろいろ試しましたが、元のHTMLのままの状態での抽出しかできませんでした。

Last edited by やまほん (2015-07-02 09:15:13)

Offline

#6 2015-06-30 23:45:56

Hiro
Member

Re: Javascriptで生成後のHTMLを取得

目的ページをWebビューアに表示した状態で、以下のjavascript:スキームをWebビューアのURLで送信します。

javascript:function f(){var r=document.getElementsByClassName('amount-number')[2].innerText;clipboardData.clearData('Text');clipboardData.setData('Text',r)};f()

※プログラム内容は、目的の文字列を抽出し変数「r」に格納、クリア・リセットしたクリップボードに変数「r」の内容をコピーします。

これで、目的文字列がクリップボードにコピーされていますから、目的フィールドへ貼り付ければ良いでしょう。
この一連の流れをスクリプト化すれば完全自動化も可能です。

Offline

#7 2015-07-01 08:16:49

やまほん
Member

Re: Javascriptで生成後のHTMLを取得

ありがとうございます。

できました!
こういったこともjavascriptで出来るんですね。

qb_dpさんの過去のあちらの掲示板の書き込みも参考にしました。
ありがとうございました。

もっと勉強して自分でできるようにがんばります。
また困ったときはお願いします!

Offline

Registered users online in this topic: 0, guests: 1
[Bot] ClaudeBot

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.011 seconds, 7 queries executed - Memory usage: 513.86 KiB (Peak: 518.77 KiB) ]