2017-07-15 20 views
0

POSTリクエストを使用してWebオートメーションスクリプトファイルを実行したいと考えています。POSTリクエストによるJavaScriptファイルへの引数の受け渡し

var Nightmare = require('nightmare'); 
var nightmare = Nightmare({ show: true }); 

nightmare 
    .goto('https://duckduckgo.com') 
    .type('#search_form_input_homepage', 'github nightmare') 
    .click('#search_button_homepage') 
    .wait('#zero_click_wrapper .c-info__title a') 
    .evaluate(function() { 
    return document.querySelector('#zero_click_wrapper .c-info__title a').href; 
    }) 
    .end() 
    .then(function (result) { 
    console.log(result); 
    }) 
    .catch(function (error) { 
    console.error('Search failed:', error); 
    }); 

引数を渡すためにどのような方法があります:ここでは、たとえば、私が代わりに示されたもののユーザーが指定したURLと.goto()を実行するために、ファイルに引数を渡したいのですが一つのコード例があります.jsファイルに直接このように?

+0

引数を受け入れ、関数呼び出しでURLを渡す機能でこれを包みます。 –

答えて

1

ラップ引数を受け取る関数でnightmareへの呼び出し:

var Nightmare = require('nightmare'); 
 
var nightmare = Nightmare({ show: true }); 
 

 
function nightmareWrapper(urlArgument) { 
 
    nightmare 
 
     .goto(urlArgument) 
 
     .type('#search_form_input_homepage', 'github nightmare') 
 
     .click('#search_button_homepage') 
 
     .wait('#zero_click_wrapper .c-info__title a') 
 
     .evaluate(function() { 
 
      return document.querySelector('#zero_click_wrapper .c-info__title a').href; 
 
     }) 
 
     .end() 
 
     .then(function (result) { 
 
      console.log(result); 
 
     }) 
 
     .catch(function (error) { 
 
      console.error('Search failed:', error); 
 
     }); 
 
} 
 

 
// And call it like so: 
 

 
var urlArgument = 'https://duckduckgo.com'; 
 
nightmareWrapper(urlArgument);

+0

それは今すべてのクリック、ありがとう! –

関連する問題