ruby中使用watir的语法错误

ruby中使用watir的语法错误,ruby,watir,Ruby,Watir,我正在制作一个程序,在instagram上运行,并转给某人。我没有看到任何错误,但当我运行它时,它会显示语法错误意外的tSTRING。 我抬头一看,不知道我做错了什么 如果有人能帮我。thx require 'watir' username = "videos2fdp" password = "no pass" user = "videos_folle" browser = Watir::Browser.new :chrome browser.goto"https://www.instagr

我正在制作一个程序,在instagram上运行,并转给某人。我没有看到任何错误,但当我运行它时,它会显示语法错误意外的tSTRING。 我抬头一看,不知道我做错了什么

如果有人能帮我。thx

require 'watir'

username = "videos2fdp"
password = "no pass"
user = "videos_folle"

browser = Watir::Browser.new :chrome
browser.goto"https://www.instagram.com/accounts/login/"

puts "Logging in ..."
browser.text_field(:name => "username").set"#{username}"
browser.text_field(:name => "password").set"#{password}"

browser.button(:class => '_ah57t _84y62 _i46jh _rmr7s').click
sleep(2)

browser.goto "instagram.com/#{user}/"

if browser.button(:class => '_ah57t _84y62 _frcv2 _rmr7s').exist ?
    puts "Following #{user}"
    browser.button(:class => '_ah57t _84y62 _frcv2 _rmr7s').click
end


sleep (3)

if browser.button(:class => '_ah57t _6y2ah _frcv2 _rmr7s').exist ?
    puts "Unfollowing #{user}"
    browser.button(:class => '_ah57t _6y2ah _frcv2 _rmr7s').click

end






sleep(360)

好的,这是正确的代码,现在试试

您将
而不是
存在?
放错了位置。您正在使用
存在?

require 'watir'

username = "videos2fdp"
password = "9519516477Am"
user = "videos_folle"

browser = Watir::Browser.new :chrome
browser.goto "https://www.instagram.com/accounts/login/"

puts "Logging in ..."
browser.text_field(:name => "username").set "#{username}"
browser.text_field(:name => "password").set "#{password}"

#browser.button(:text => 'Log in').click
browser.button(:class => "_qv64e       _gexxb _4tgw8     _njrw0   ".split).click
sleep(2)

browser.goto "instagram.com/#{user}/"

if browser.button(:class => '_ah57t _84y62 _frcv2 _rmr7s'.split).exist?
  puts "Following #{user}"
  browser.button(:class => '_ah57t _84y62 _frcv2 _rmr7s'.split).click
end


sleep (3)

if browser.button(:class => '_ah57t _6y2ah _frcv2 _rmr7s'.split).exist?
  puts "Unfollowing #{user}"
  browser.button(:class => '_ah57t _6y2ah _frcv2 _rmr7s'.split).click

end


sleep(360)

把程序包括在这里,让我和我的编辑核对一下。你的图像中x:485,y:275有一个错误。希望有帮助。@Stefan他用的是
存在?
而不是
存在?
,这就是你的意思吗?@Rajagopalan确实,你查过坐标了吗?:-)@谢谢你!你真的让我大吃一惊。现在,我的终端出现了一个错误,重复到无穷远的地方,说:2018-04-26 09:55:04 WARN Watir[DEPRECATION]使用:class定位器定位多个具有字符串值的类是不推荐的。改为使用数组。@Gaspargg好的,我更新了按钮点击的代码,你能接受我的代码并再次尝试执行吗?是的,非常感谢,但瓦蒂尔似乎找不到按钮:C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/watir-6.10.3/lib/watir/elements/element.rb:664:in‘rescue in element#call’:30秒后超时,等待#“登录”,:tag_name=>“button”}>要定位;也许在一个iframe里看看?(Watir::Exception::UnknownObjectException)别介意我将文本目标更改为一个类,然后works@Gaspargg我已经用类更新了代码,它适合我!