私はいくつかのイベントを実行したいと思います。ウェブサイトのクリック私はjavascript(またはchrome extension)を使ってchromeで行うことができますが、chromeを開かずにサーバーサイドコードを使用することは可能ですか? APIは提供されません。それは掻き立てるのではなく、ある種の行動を起こす。APIを使用してnode.jsでブラウザアクションを実行
1
A
答えて
1
NodeJSは、Google V8 engineを使用してJavaScriptコードを解釈します。ブラウザ環境では実行されないため、DOMやイベントの処理が欠けています。しかし、実際にはmock-browserパッケージを使ってNodeJS環境でブラウザをモックすることができます。いくつかの方法(例えばgetComputedStyle)はまだ動作しませんよう
const MockBrowser = require('mock-browser/lib/MockBrowser')
const mockBrowser = new MockBrowser()
global.window = mockBrowser.getWindow()
global.document = mockBrowser.getDocument()
global.navigator = mockBrowser.getNavigator()
しかし、あなたは、このアプローチには注意する必要があります。
DOMとイベントをサーバー側で使用する理由を再検討する必要があります。
PhantomJS:ヘッドレスブラウザNodeJS
PhantomJSのためにそれがブラウザをシミュレートすることができますフル機能のブラウザをご提供など、こする、テストのために使用されているNodeJSためheadless browserです。あなたがウェブサイトをこすりしたい場合
をこするためCasperJSを使用して
、あなたは自身がPhantomJSを使用していますCasperJSと呼ばれるライブラリを使用することができます。例:あなたはそれがイベントをトリガする唯一の方法であるため、サーバーside.` にDOMやイベントを利用したい理由
var casper = require('casper').create();
var links;
function getLinks() {
// Scrape the links from top-right nav of the website
var links = document.querySelectorAll('ul.navigation li a');
return Array.prototype.map.call(links, function (e) {
return e.getAttribute('href')
});
}
// Opens casperjs homepage
casper.start('http://casperjs.org/');
casper.then(function() {
links = this.evaluate(getLinks);
});
casper.run(function() {
for(var i in links) {
console.log(links[i]);
}
casper.done();
});
関連する問題
- 1. 永遠に使用してUbuntuでnode.jsサーバーを実行
- 2. jspブラウザアクションの実装方法
- 3. node.jsを使用してexeファイルを実行する
- 4. VBAを使用してNode.jsを実行する
- 5. WebサービスAPIを使用してJenkinsでカスタムビルドを実行
- 6. JAVA APIを使用してリモートサーバーでシェルスクリプトを実行する
- 7. TeamcityでRest APIを使用してビルド設定を実行
- 8. Node.JSでOAuthを使用してJIRA REST APIを認証
- 9. Node.jsを使用して外部JSファイルにjavascript関数をロードして実行
- 10. Node.js - Promise.all()を使用して複数の関数をロードして実行する
- 11. node.jsを使用したapi認証
- 12. Windows上でnode.jsを使用してJavaScriptファイルを実行する方法(scribbletune)
- 13. Javascriptを使用してTwilio APIコードを実行するには?
- 14. spark REST APIを使用してpysparkスクリプトを実行中
- 15. rest-apiを使用してSpringクラウドタスクを実行する方法
- 16. javascript APIを使用してFacebookの検索を実行する
- 17. Web API Dynamicsを使用してFetch XMLを実行する365
- 18. Java APIを使用してドキュメントメタデータの範囲検索を実行
- 19. Java APIを使用してPrestoクエリを実行するには?
- 20. Python APIを使用して無能のプレイブックを実行
- 21. モバイルアプリケーションNode.jsバックエンドでSQLを使用してテーブルジョインを実装する
- 22. LinuxでJenkinsを使用してNewman REST APIテストを実行しています
- 23. Node.jsでtwitter apiにクエリを実行してもエラーが発生する
- 24. Chromeの拡張機能を実行、バックグラウンドスクリプトと、コンテンツのスクリプトは、ブラウザアクションで
- 25. 'readline'を使用したnode.jsプログラムの同期実行
- 26. node.jsを使用してapiを呼び出す際のエラー
- 27. node.jsでzgrepを実行
- 28. node.jsでmongooseを使用してデータベースにクエリを行う方法
- 29. node.jsで実行されているスクリプトでjsdocを使用するには?
- 30. AWSラムダ関数のNode.JSを使用したREST APIの使用
'たぶん、あなたは再考する必要がありますか? –
@Nately Jamerson:何のイベントをトリガーしますか?なぜサーバー側にDOMが必要ですか? – bman
私はリンクの束を持って、私はサイト上の特定のボタンをクリックしてトリガーしたい、あなたはDOMをトリガーせずにそれを行うことができますか? APIは提供されません。 –