zoukankan      html  css  js  c++  java
  • WebDriver配置Firefox代理服务器

    这玩意儿网上很多,但是坑更多,现在记录一个肯定能用的。

    我的环境是Python 2.6 + Selenium 2.6

    from selenium import webdriver profile = webdriver.FirefoxProfile() profile.set_preference('network.proxy.type', 1) profile.set_preference('network.proxy.http', 'proxy_url') profile.set_preference('network.proxy.http_port', 3128) profile.set_preference('network.proxy.ssl', 'proxy_url') profile.set_preference('network.proxy.ssl_port', 3128) profile.update_preferences() driver = webdriver.Firefox(profile)

    这些坑分别是:

    有些地方只告诉你配置network.proxy.http和network.proxy.http_port。但是如果不设置network.proxy.type,一切都是浮云。这个配置是个整数,默认是0,就是直接连接;1就是手工配置代理。
    profile.set_preference(‘network.proxy.type’, 1)

    那个端口号3128是整数
    profile.set_preference(‘network.proxy.http’, ‘proxy_url’)
    profile.set_preference(‘network.proxy.http_port’, 3128)

    如果有些资源是https的,是需要另外配置network.proxy.ssl和network.proxy.ssl_port的。例如facebook的图片。。。

    set完以后,是需要update_preferences的。。。
    profile.update_preferences()

    最后贴一个完整的Firefox配置参数表:http://kb.mozillazine.org/Firefox_:_FAQs_:_About:config_Entries

    如果发现自己的配置好像没有生效,那么在webdriver启动的Firefox里面输入about:config。然后对着上面那个配置参数表来看。总会发现掉哪个坑的。

  • 相关阅读:
    java实现前n项和,要求不使用循环、乘除法、判断标识
    java 线程池 带返回值
    java 多线程 数据通信
    jedis使用分布式锁
    记一次自定义管理工厂使用spring自动装载bean
    面试题玩数组
    记一次随便排序算法
    九九乘法表打印记一次al面试
    多线程操作共享变量顺序输出abc 记一次al面试题
    博客迁移
  • 原文地址:https://www.cnblogs.com/shihao/p/2324899.html
Copyright © 2011-2022 走看看