Proxy 使用tor代理时,使用casperjs或phantomjs绕过cloudflare保护

Proxy 使用tor代理时,使用casperjs或phantomjs绕过cloudflare保护,proxy,casperjs,tor,Proxy,Casperjs,Tor,我使用tor通过这个socks代理访问casperjs 我的操作系统windows 10 x64 我的test.js var casper = require('casper').create({ verbose: true, logLevel: 'error', pageSettings: { loadImages: false, // The WebPage instance used by Casper will loadPlugins: false, // use the

我使用tor通过这个socks代理访问casperjs 我的操作系统windows 10 x64

我的test.js

var casper = require('casper').create({
verbose: true,
logLevel: 'error',
pageSettings: {
    loadImages: false, // The WebPage instance used by Casper will
    loadPlugins: false, // use these settings
    userAgent: 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36'
    }
});
var caturl = ('http://www.test.com');
casper.start(caturl, function() {
    this.echo(this.getTitle());
});
casper.run();
结果来自我的本地机器

casperjs test.js
This Is Page Title
当打开tor时,我确信它工作正常,socks代理也在工作,之前对它进行了测试

casperjs  --proxy=127.0.0.1:9150 --proxy-type=socks5 test.js
Attention Required! | Cloudflare
我看到的结果是,它希望解决从cloudflare打开此站点的recaptcha问题

但是

当我打开tor浏览器,打开casperjs中测试的链接时,它会正常打开,而不需要任何recaptcha

为什么 当使用casperjs打开链接时,要求重新获取链接,当使用tor browser(使用相同的代理IP)打开链接时,不要求重新获取链接


这与useragent有关吗

它通常基于IP。你确定你的Tor浏览器没有cloudflare的cookie说你已经通过了验证吗?threre在使用Tor浏览器加载页面时没有发生任何事情,它只需在2秒或3秒钟内直接打开页面,以及从Tor打开cookie时,它与cloudflare或测试的网站无关。这里有一些方法可以识别PhantomJ,甚至可以使用自定义useragent。考虑到这是Cloudflare的面包和黄油,如果他们实现了这些技术,我不会感到惊讶。是否有必要在casperjs攻击模式下使用Cloudflare或任何类似(具有点击能力)的tor代理来废弃网站