tor 用户代理如何更改?解决

How does the tor user agent change? resolved

我使用 node.js 在 google 上发出请求。

我用了 puppeteer 但他检测到了我的机器人。

所以我使用了 tor-request。

我可以在每次连接时更改我的 ip。

但是 google 仍然挂起并显示相同的错误消息。

我想更改 tor-expert 包的用户代理。

怎么办?

Our systems have detected unusual traffic from your computer network. Please try your request again later. Why did this happen?

IP address: 109.70.100.** Time: 2019-08-03T08:47:17Z URL: https://www.google.com/search?q=re&gbv=1&sei=6UlFXY6mKsSiab3EjbAF

var tr = require('tor-request');
tr.TorControlPort.password = "***";
io.sockets.on('connection', async(socket) => {
    socket.on('key', function(value) {
    function torIp() {
            tr.request('https://www.google.com/search?q=re&gbv=1&sei=6UlFXY6mKsSiab3EjbAF', function(error, response, body) {
                if (!error && response.statusCode == 200) {
                    console.log("Your public IP is: " + body);
                }
                socket.emit('google_web', body)
            });
        }
        torIp();
        tr.renewTorSession(function(error, msg) {
            console.log(error);
            console.log(msg);
            if (msg) {
                torIp();
            }
        });
    })
})

要更改用户代理,您可以使用描述的方法here,一个 tor-request 问题:

tr.request({
  url: 'https://www.google.com/search?q=re&gbv=1&sei=6UlFXY6mKsSiab3EjbAF',
  headers: {
    'user-agent': 'giraffe'
  }
}, function(error, response, body) {
  // ...
});

只需将 giraffe 替换为您想要的任何用户代理即可。

(但是,如评论所述,Google 可能完全阻止了某些 Tor 出口节点,在这种情况下更改用户代理将无济于事)