Chrome 拡張機能を使用して、ブラウジングとナビゲーションを (条件付きで) 自動化できる可能性を調査しています。私の希望は、拡張機能がリモート ページを (バックグラウンドで) 読み込み、javascript を挿入してクリック可能なリンクを評価し、(クリック メソッドを呼び出して) 適切な (いくつかの JavaScript ロジックによって評価された) リンクをクリックし、結果のプロセスを繰り返すことができることです。ページ。
私のjavascriptの能力は問題ではありませんが、Chrome拡張機能がページを後ろからロードしてスクリプトを挿入できるかどうか(DOMにアクセスできるようにするかどうか)を判断するのに苦労しています。
誰かがそうする能力を確認 (または拒否) できれば幸いです。もしそうなら、次にどこを調査すべきかについての役立つ指針を教えてください。
@Rob W - 実験的な機能が法案に完全に適合しているようです。しかし、私の最初のテストでは、機能がまだ非常に実験的であることを示しているようです...つまり. コールバックから返されるオブジェクトはありません:
background.html
function getAllosTabs(osTabs){
var x = osTabs;
alert(x.length); // error: osTabs is undefined
}
function createOffScreenTabCallback(offscreenTab){
document.write("offscreen tab created");
chrome.experimental.offscreenTabs.getAll(getAllosTabs);
alert(offscreenTab); // error: offscreenTab is undefined
}
var ostab = chrome.experimental.offscreenTabs.create({"url":"http://www.google.com"}, createOffScreenTabCallback)
alert(ostab); // error: ostab is undefined
github の chromium ソース コードをさらに掘り下げると、バックグラウンドから offscreenTab を作成する際の制限が明らかになりました。
関連する WebContents がないため、背景ページからオフスクリーン タブを作成できないことに注意してください。オフスクリーン タブの有効期間は作成中のタブに関連付けられているため、親として表示されるタブを要求すると、オフスクリーン タブのリークを防ぐことができます。
これまでのところ、バックグラウンドで (自動的かつ条件付きで) ブラウズする拡張機能を作成できる可能性は低いようですが、それでも試してみます。ポップアップのスクリプトから作成するとうまくいくかもしれません。コンピューターの起動時に自動的に実行されることはありませんが、ブラウザーが開いていて、ユーザーがブラウザー アクションをクリックすると実行されます。
さらなる提案は大歓迎です。