新手问题 watir+phantomjs 如何添加代理

403 · 2017年08月15日 · 最后由 403 回复于 2017年08月15日 · 2111 次阅读

做的一个小爬虫,需要添加代理去访问。在--->[http://stackmirror.cn/page/rh4zs5oe2ecx] 看到这样一段代码

switches = ['--proxy=69.106.88.7:60199', '--proxy-auth=username:password123']
browser = Watir::Browser.new :phantomjs, :args => switches

就模仿了过来

我的代码
require 'watir'
def download(url)
  page = Watir::Browser.new(:phantomjs,
                             :args =>['--proxy=124.152.252.194:7895','--load-images=no']
    )
  page.goto(url)
  return  page
end
html = download('https://www.baidu.com')##当然不是去爬百度
puts html.body

然后控制台提示

2017-08-15 10:57:39 WARN Selenium [DEPRECATION] :args is deprecated. Use driver_opts: {args: ["--proxy=124.152.252.194:7895", "--load-images=no"]} instead.

有没有大佬,给说下改怎么办。。😰

问题解决

require 'watir'
def download(url)
    page = Watir::Browser.new(:phantomjs,
        driver_opts: {args: ['--proxy=112.117.119.17:6799','--ignore-ssl-errors=yes']})
  begin
    page.goto(url)
  rescue Exception => e
    puts "出现异常#{e.message}"
  end

  # page.close()
  return  page
end

html = download('https://www.boip.net/api/myip')
puts html.html

改成这样?

page = Watir::Browser.new(:phantomjs,
                             driver_opts: { args: ['--proxy=124.152.252.194:7895','--load-images=no'] }
    )

另外你这里的用法好像不是文档推荐的用法吧,看文档是 http://watir.com/guides/proxies/

Example: setting a http and https proxy for Firefox

profile = Selenium::WebDriver::Firefox::Profile.new
profile.proxy = Selenium::WebDriver::Proxy.new http: 'my.proxy.com:8080', ssl: 'my.proxy.com:8080'
browser = Watir::Browser.new :firefox, profile: profile

Example: setting a http and https proxy for Chrome

switches = '--proxy-server=my.proxy.com:8080'
browser = Watir::Browser.new :chrome, switches: switches
martin91 回复

谢谢了

martin91 回复

我按着官方的跑也不行~~

403 关闭了讨论。 08月15日 17:13
403 重新开启了讨论。 08月15日 17:13
需要 登录 后方可回复, 如果你还没有账号请 注册新账号