Running multiple instances of casperjs

耗尽温柔 提交于 2019-12-20 05:44:14

问题


I need to run 3 url requests simultaneously.I thought of running 3 casper instances each fetching a url. As a simple example,I tried with 2 instances.

var casper=require('casper').create();
casper.start('http://www.google.com');

var casper1=require('casper').create();
casper1.start('http://www.google.com');

casper1.then(function() {
    casper1.echo('inside');
});
casper1.echo('outside');

casper1.run();
casper.run();

Output shows only 'outside'.Why does'nt it run the casper1.echo('inside');


回答1:


CasperJS uses a stack of commands that created whenever you use one of the functions from their api (start, then, thenOpen, etc). Once all of the items are queued up in the stack, you can execute them in order by doing casper.run(). If something isn't added to the stack, Casper will not execute it.

Simply put, casper1.echo('outside') isn't being executed because it was never added to the stack.

Their FAQ on the topic breaks it down in more detail.



来源:https://stackoverflow.com/questions/15437512/running-multiple-instances-of-casperjs

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!