zoukankan      html  css  js  c++  java
  • selenium phantomjs 设置代理ip方法

    最近遇到phantomjs动态更换ip的功能,在知乎上看到一篇不错的文章,顺手记下来以备后用 phantomjs selenium 如何动态修改代理?

    可以这样做(Python代码):
    # 不使用代理代打开ip138
    browser=webdriver.PhantomJS(PATH_PHANTOMJS)
    browser.get('http://1212.ip138.com/ic.asp')
    print('1: ',browser.session_id)
    print('2: ',browser.page_source)
    print('3: ',browser.get_cookies())
    
    # 利用DesiredCapabilities(代理设置)参数值,重新打开一个sessionId,我看意思就相当于浏览器清空缓存后,加上代理重新访问一次url
    proxy=webdriver.Proxy()
    proxy.proxy_type=ProxyType.MANUAL
    proxy.http_proxy='1.9.171.51:800'
    # 将代理设置添加到webdriver.DesiredCapabilities.PHANTOMJS中
    proxy.add_to_capabilities(webdriver.DesiredCapabilities.PHANTOMJS)
    browser.start_session(webdriver.DesiredCapabilities.PHANTOMJS)
    browser.get('http://1212.ip138.com/ic.asp')
    print('1: ',browser.session_id)
    print('2: ',browser.page_source)
    print('3: ',browser.get_cookies())
    
    # 还原为系统代理
    proxy=webdriver.Proxy()
    proxy.proxy_type=ProxyType.DIRECT
    proxy.add_to_capabilities(webdriver.DesiredCapabilities.PHANTOMJS)
    browser.start_session(webdriver.DesiredCapabilities.PHANTOMJS)
    browser.get('http://1212.ip138.com/ic.asp')
  • 相关阅读:
    [转] CNN工作步骤解析
    [转] Attention模型结构
    [转] Boost算法
    [转] GDBT详解
    [转] Noise Contrastive Estimation 噪声对比估计 资料
    [转] 对数似然与交叉熵
    [转] ELMO
    [转] Batch Normalization
    强化学习总结
    MySQL 与 Hive 逻辑相关
  • 原文地址:https://www.cnblogs.com/hyh123/p/6991676.html
Copyright © 2011-2022 走看看