多个线程,每个线程具有不同的代理设置

发布于 2024-11-15 04:31:45 字数 266 浏览 2 评论 0原文

是否可以使用不同的代理设置运行多个并发线程。在线程中调用它可以吗:

proxy_support = urllib.request.ProxyHandler({'http': http_proxy})
opener = urllib.request.build_opener(proxy_support)
urllib.request.install_opener(opener)

如果您在从线程调用的函数中调用相同的代码可以吗?

谢谢

Is it possible to run multiple simultaneous thread with different proxy settings. Would calling this in the thread be ok:

proxy_support = urllib.request.ProxyHandler({'http': http_proxy})
opener = urllib.request.build_opener(proxy_support)
urllib.request.install_opener(opener)

If you called that same code in a function called from the thread would that be ok?

Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

一袭水袖舞倾城 2024-11-22 04:31:45

您可以在线程中调用它们,但它们的行为会影响所有线程,因此您不会得到您想要的结果。

但是,如果您使用 opener.urlopen(...) 而不是 urllib.request.install_opener(opener)urllib.request.urlopen(... ),无论有没有线程,它都应该可以正常工作。

You can call those in a thread, but their behaviour would affect all threads, so you wouldn't get the result you want.

However, if you use opener.urlopen(...) instead of urllib.request.install_opener(opener) and urllib.request.urlopen(...), it should work fine, with or without threads.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文