下面是我使用http://whatismyipaddress.com/proxy-check检查IP地址的代码
var casper = require("casper").create(),
utils = require('utils');
casper.userAgent('Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20100101 Firefox/17.0');
casper.start("http://whatismyipaddress.com/proxy-check", function() {
this.capture('0.png');
});
casper.on('remote.message', function(msg) {
this.echo('Remote: ' + msg);
})
casper.run(function() {
this.echo('End');
//finish execution script
this.exit();
});
我输入了casperjs --proxy="xxx.xxx.xxx.xxx:80" proxy.js
,但屏幕截图正是我机器上的IP地址。
那么,我如何知道代理是不是坏了,或者我的代码或命令行中是否有错误?
发布于 2013-05-30 21:10:21
如果您想测试casperjs是否成功地使用代理服务器,您可以使用以下脚本测试。它向whatismyip.com发出请求并打印casperjs使用的IP地址。
//create casper object
var casper = require('casper').create();
casper.start('http://www.whatismyip.com/');
//to avoid 'Access Denied' <!-- Error #1010 -->
//The owner of this website (www.whatismyip.com) has banned
//your access based on your browser's signature (42c0a6c6-cl-ua-50). (Ref. 1010)
casper.userAgent('Mozilla/5.0 (Macintosh; Intel Mac OS X)');
//Home Page
casper.then(function() {
if(this.exists('div#greenip')){
var element = this.evaluate(function() {
//remove unnecessari nodes
return jQuery('div#greenip').text().trim();
});
console.log(element);
}else{
console.log("ACCESS_DENIED");
}
});
casper.run(function() {
//finish execution script
this.exit();
});
输出:
proxy.js --代理=xxx.xxx:60099--代理身份验证=用户名:密码casperjs
XXX.XXX
发布于 2014-03-05 15:12:22
使用http://ip-addr.es/的较短的casperjs脚本
var casper = require('casper').create();
var url = 'http://ip-addr.es/';
casper.start(url, function() {
var js = this.evaluate(function() {
return document;
});
this.echo(js.all[0].outerText);
});
casper.run();
假设您已经将前面的脚本保存为casperjs,并且您有一个监听本地主机端口8000的SOCKSv5代理,那么您可以检查casperjs当前是否正在使用代理作为:
simone@tramontana:~$ casperjs whatismyip.js
93.[xx].[xx].226 # I've hidden a couple of bytes of my real IP ;)
simone@tramontana:~$ casperjs --proxy=127.0.0.1:8000 --proxy-type=socks5 whatismyip.js
46.23.73.4
发布于 2013-05-30 13:49:25
我运行了你的代码,它很适合我
在没有代理的情况下运行脚本。
casperjs proxy.js
使用代理运行脚本。
密码
--proxy=208.72.118.16:60099 --proxy-auth=用户名:密码proxy.js
https://stackoverflow.com/questions/16830952
复制