深圳电信突然访问不了 translate.google.cn,导致 chrome 网页翻译没法用,如何解决?

2022-02-13 12:06:27 +08:00
 kgdb00
chrome 网页翻译功能需要系统能直接 ping 通 translate.google.cn ,我平常都是使用 SwitchyOmega 代理,不想为了用这个功能就用全局代理(指的是 openvpn 或软路由网关),有什么好办法能在不开启全局代理的情况下让 chrome 的网页翻译功能永远都能用?

先排除这两种办法:
1 ,换 dns ,没法保证稳定。
2 ,使用 chrome 的--proxy-server 参数启动,这非常不灵活,切换代理还要重启浏览器。

我用的是 Linux 系统,不知道 Linux 有没有什么特殊的网络工具能实现让 chrome 进程对 translate.google.cn 的访问交给一个 socks5 或 http 代理来处理,对其他网址或 ip 的访问还是用系统的 dns 和路由。

如果没有现成的工具,如何通过自己写程序来实现这个功能?
7491 次点击
所在节点    Google
49 条回复
duke807
2022-02-13 14:01:54 +08:00
電腦用 stardict 不好嗎?
skiy
2022-02-13 14:09:12 +08:00
@kgdb00 不想用 gfwlist 就不添加就好了。然后自己手动添加需要过滤的域名就好。gfwlist 不是万能的,哪些不能访问的,我都是按它的提示添加的。

你应该没理解它的意思:

auto switch 也是要添加和通过 proxy 的。它只是过滤规则,并不是代理。你可以添加多个 proxy ,然后 auto switch 指定哪些域名 直连,哪些域名走 proxy-A ,哪些走 proxy-B ...。添加 gfwlist 只是相当于该( gfwlist 中的域名)规则,走指定的 proxy 。

而 proxy ,是全部通过浏览器访问的域名都走 proxy 。

另外,你尝试用 proxy 看看它能不能翻译先,如果能,证明可用 SwitchyOmega 。
jinliming2
2022-02-13 14:11:42 +08:00
本地启个 v2ray 后台进程,出口自己配路由指定不同域名走不同代理,或者不走代理。然后 Chrome 启动直接全局代理 127.0.0.1
kgdb00
2022-02-13 14:16:16 +08:00
@skiy 我从来都没理解错 SwitchyOmega 的功能,你说的我都明白,你没明白的是,SwitchyOmega 的 proxy 不能代理 chrome 自带的这个网页翻译。。。。。。。
kgdb00
2022-02-13 14:21:51 +08:00
算了,可能是我要求太高,各位都没理解我的问题,我自己想办法吧,沉了。
skiy
2022-02-13 14:25:03 +08:00
@kgdb00 所以我最后的那句就是问这个的了。不过你既然说不能代理,那就说明 SwitchyOmega 这个无解了。

---
你可以按照你
“2 ,使用 chrome 的--proxy-server 参数启动,这非常不灵活,切换代理还要重启浏览器。”

这种方式,添加多一个 desktop ,Exec= 上面加参数 --proxy-server 专门用于代理浏览的就好了。虽然也不太方便。
harwck
2022-02-13 14:26:54 +08:00
比如我是 WiFi 网络,直接进去 Ubuntu Settings -> Network -> Network Proxy 里面直接添加你的 HTTP 代理,ProxySwitchyOmega 也可以不要了
kgdb00
2022-02-13 14:28:16 +08:00
@harwck 我试了,没用的
kgdb00
2022-02-13 14:34:30 +08:00
@skiy 我觉得唯一的办法可能就是让 chrome 运行在独立的 namespace 中,给这个 ns 配置一个全局代理网关,这样做既保证能网页翻译,也可以用 SwitchyOmega 进一步实现更灵活的代理。
kgdb00
2022-02-13 14:35:26 +08:00
sky96111
2022-02-13 14:58:51 +08:00
@kgdb00 我是 Linux 不过主力是火狐,Chrome 翻译代理不生效好像是一个古老的 bug https://github.com/feliscatus/switchyomega/issues/264 看看这个和拓展出来的几个 issue 。
我的建议是卸掉 SwitchyOmega,换 Clash 等后端分流的软件,用环境变量、系统代理、proxychains 让整个 Chrome 走代理
skiy
2022-02-13 14:59:32 +08:00
/opt/google/chrome/chrome --proxy-server=socks5://127.0.0.1:1089

添加一个 desktop 到 快捷方式
~/.local/share/applications/chrome.desktop

[Desktop Entry]
Name=chrome proxy
Exec=/opt/google/chrome/chrome --proxy-server=socks5://127.0.0.1:1089
Terminal=false
Type=Application
Comment=chrome

---
亲测,chrome 可以使用代理。
Edge 浏览器 beta 版不行。
kgdb00
2022-02-13 15:32:37 +08:00
@skiy 可以这样用,唯一的问题就是如果我想换一个代理端口就必须关闭所有浏览器窗口。
skiy
2022-02-13 15:47:47 +08:00
@kgdb00 想换一个代理端口?有这个需求吗?

我一般情况下是本地代理端口固定,要是要改,就改“代理工具”上的配置。因为比如我的 1089 ,不只是 chrome 浏览器上使用了,idea 也可能也使用了。所以一般情况下,我只改代理工具的“代理服务器”配置。

另外,一般情况下,关闭窗口也不会有影响。再重新打开时,它会是“组”形式的关闭标签,再点一次就好了。

而且,可以在需要翻译的网站用这个浏览器。不需要翻译的那个又是另一个( New Window )。就好了。
kgdb00
2022-02-13 15:54:23 +08:00
@skiy 因为我有多个梯子
kgdb00
2022-02-13 16:12:57 +08:00
@skiy --proxy-server 这种用法也基本没啥问题,因为梯子挂了需要换一个不常发生,我只是不想把配置写死在一个文件里,想在浏览器运行的时候能随时更改用来翻译的代理。
hicdn
2022-02-13 17:10:27 +08:00
@kgdb00 用 clash 做代理管理,对外暴露固定端口,切换非常方便。
Greatshu
2022-02-13 18:15:16 +08:00
确定是不是 translate.google.cn ? Windows chrome 98 网页翻译用的是 translate.googleapis.com ,这个域名没有问题
fastcache
2022-02-13 19:05:06 +08:00
试了 n 个 dns ,都可以:
1 、换广东电信 dns, 202.96.128.166 、202.96.134.133
2 、换 dnspod ,119.29.29.29 或 https://doh.pub/dns-query (设置方法见 3 )
3 、换干净 dns ,https://a.passcloud.xyz/dns-query ,chrome->settings->privacy and security->use secure dns->with custom
Junzhou
2022-02-13 19:23:13 +08:00
这个情况有一段时间了,暂时换到了百度翻译

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://yangjunhui.monster/t/833520

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX