-1

Firefoxの現在のページのhtmlの文字列(「123」を「111」に置き換えたい)を置き換えたい。

説明:

Firefoxを開いてから、次の場所に移動します。

www.site.com/print.php?string=123

ドキュメントが完全に読み込まれるまで待っています

ページhtml:

<html>
<body>
123
</body>
</html>

文字列「123」を「111」に置き換えています。

コードは次のようになります。

        openff("http://www.site.com/print.php?string=123") 'open url
again:
        For Each p As Process In Process.GetProcessesByName("firefox") 'wait until page is fully loaded
            If p.MainWindowTitle = "123 page title" Then
                Exit For
            Else
                Application.DoEvents()
                GoTo again
            End If
        Next
        replaceInFFcurrentDocHtml("123", "111") 'Replace the string!!!

関数replaceInFFcurrentDocHtml()は実際には存在しません。

replaceFirefoxの現在のページのhtmlに文字列を付けることができる関数はありますか?

またはget、現在のhtmlからの関数firefox

(ハンドルとウィンドウを使用してspy ++でhtmlを取得しようとしましたが、この方法では機能しません)

4

2 に答える 2

0

これ自体は正確には「Firefoxへのハッキング」ではありませんが、機能する可能性があります。

WebClientを使用して、サイトのコンテンツを文字列としてダウンロードし、その文字列で本当に必要なものを使用してreplaceを呼び出し、結果を一時的なhtmlファイルに書き込みます。最後に、Firefoxを具体的に呼び出して上記のhtmlファイルを開くか、Process.Startを使用して開く必要のあるアプリケーションを解決するようにOSに依頼します。

Firefox(そしてセキュリティ上の理由から、ブラウザはすべきではありません)はDOMへの外部変更を許可していると思います。これは、Firefoxのコードに複雑な変更を加えることなく有効な唯一のアプローチです。

また、良いヒント:GoToを使用しないでください。これは悪い考えです。

于 2012-12-24T08:18:41.573 に答える
0

ページ コンテンツを変更するために Firefox 拡張機能を記述できます。多くの拡張機能がこれを行います。

または、Greasemonkey スクリプトでも同じことができると思います。 https://addons.mozilla.org/en-US/firefox/addon/greasemonkey/

于 2012-12-24T15:24:21.130 に答える