【问题标题】:How preventing Watir to open brower?如何防止水打开浏览器?
【发布时间】:2018-08-11 07:34:11
【问题描述】:

我正在使用以下内容来抓取页面。 Scraper 工作正常,但是每次我运行它时,它都会打开一个我不需要的 Chrome 窗口。

browser = Watir::Browser.new

loginpage = browser.goto('https://www.login-page.com')

如何防止它打开窗口?

【问题讨论】:

  • 如果不运行第一行,它不会打开新窗口,从第二次开始排除第一行。

标签: google-chrome web-scraping webdriver watir


【解决方案1】:

我认为浏览器显示是预期行为,但您可能不想看到它。

这工作正常,没有浏览器或窗口被“打开”。

b = Watir::Browser.new :chrome, headless: true   
puts "Browser is opened." 
loginpage = b.goto "www.google.com"  
puts "Navigate to google, title is #{b.title}"

这个也可以

b = Watir::Browser.new :chrome, :switches => %w[--headless]  
puts "Browser is opened." 
loginpage = b.goto "www.google.com"  
puts "Navigate to google, title is #{b.title}"

希望是这样。

编辑:

如果您在 linux 上运行测试,这可能值得一试

从命令行运行 Xvfb

Xvfb :12 -screen 0 1680x1080x16 &

然后在您的测试中,在初始化浏览器之前设置该显示

ENV['DISPLAY'] = ':12'
#or this
#`export DISPLAY=:12`

如果这不起作用,我猜不透。

【讨论】:

  • 我都试过了,但两个选项都不起作用。浏览器打不开,这是真的。但是刮刀不再起作用了。虽然它在没有无头的情况下运行良好......
猜你喜欢
  • 1970-01-01
  • 2015-05-21
  • 1970-01-01
  • 1970-01-01
  • 2012-11-07
  • 2012-04-30
  • 2023-01-23
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多