关于selenium firefox 代理设置踩坑

之前一直以为代理设置就是简单的加上这些语句就可以了


profile.set_preference("network.proxy.type", 1)

profile.set_preference("network.proxy.http", ip)

 profile.set_preference("network.proxy.http_port", int(port))

 profile.set_preference("general.useragent.override", generate_user_agent())

这样通过selenium打开http://httpbin.org/ip时检测出来的ip确实也是代理的ip,但是直到我打开https://ip.cn时才发现还是原来的ip,

后来用了浏览器插件,对相同的代理IP进行验证,发现确实是代理IP没有设置好,难道服务器其实是一直在裸奔

直到后来看了这位老哥的博客才知道,还缺少了一个关键的语句

socket = proxy

proxy1 = Proxy({

                'proxyType': ProxyType.MANUAL,

                'httpProxy': socket,

                'ftpProxy': socket,

                'sslProxy': socket,

                'noProxy': '',

            })

profile1.set_proxy(proxy1)

这样再打开ip.cn的时候显示的就是代理的ip

吐槽一下,不知为何,这个set_proxy会被警告,但是按照它提示的传递proxy给web驱动代理ip也是没生效(检查出来的ip还是原来的)

还有就是,我查了那么多资料就那个老哥的博客是有效,其他人都是只有前面那部分

有不对的地方望指正

你可能感兴趣的:(python,python)