我在Tor中使用了硒,但它不起作用,我看到有一个库可以这样做,但只能在python中使用。可以用javascript完成吗?我试过了,但是没用。
const {Builder, By, Key, until} = require('selenium-webdriver');
var driver = new Builder()
.forBrowser('tor')
.build();
driver.get('https://www.google.com')
答案 0 :(得分:0)
据我所知,这只能通过Java和Python完成。
答案 1 :(得分:0)
启动Tor浏览器捆绑包后,我无法让最新的geckodriver(0.21.0)和Selenium(3.13.0)来获取网页。我认为这可能与Tor使用的旧版Firefox和geckodriver不兼容,但不确定。
如果您只是尝试使用selenium-webdriver来使用Tor网络,请尝试以下操作:
const webdriver = require('selenium-webdriver');
const firefox = require('selenium-webdriver/firefox');
var options = new firefox.Options();
options.setPreference('network.proxy.type', 1) // manual proxy config
.setPreference('network.proxy.socks', '127.0.0.1')
.setPreference('network.proxy.socks_port', 9050)
.setPreference('network.proxy.socks_remote_dns', true) // resolve DNS over Tor
.setPreference('network.proxy.socks_version', 5)
let driver = new webdriver.Builder()
.forBrowser('firefox')
.setFirefoxOptions(options)
.build();
driver.get('https://example.com/')
您将需要使用专家捆绑包运行Tor或本地安装并运行它。
这是我尝试使Tor Browser自动化的方法。它可以正确启动所有内容,但从不导航到页面。
const webdriver = require('selenium-webdriver');
const firefox = require('selenium-webdriver/firefox');
var options = new firefox.Options();
options.setBinary('/home/me/Desktop/tor-browser_en-US/Browser/start-tor-browser');
options.addArguments('--detach');
(async function run() {
let driver = await new webdriver.Builder()
.forBrowser('firefox')
.setFirefoxOptions(options)
.build();
await driver.get('https://example.com/')
})();
仅重申一下,第二个示例不起作用。在Mint 18和Tor浏览器7.5.6(FF ESR 52.9.0)上,它将启动Tor,并且浏览器运行良好,但不会导航到页面。