我用'watir','路边','nokogiri','esay_captcha_solver',我试图刮页,所以我会知道验证码是否已经出现,然后通过获取图像网址来解决问题。然而,我不知道该如何陈述以及如何刮掉我所需要的东西。你如何刮网页,以检查是否需要解决captcha
#=> SIGN IN
browser = Watir::Browser.new :ff
browser.goto "https://soundcloud.com/login"
browser.text_field(:id => "site-username").set "#{name}"
browser.text_field(:id => "site-password").set "#{pass}"
browser.button(:id => "log-in-submit-button").click
if browser.body(:url => "https://soundcloud.com/login?captcha=true").text.include? (:id => "recaptcha_table")
http = Curl.get("https://soundcloud.com/login?captcha=true") do |http|
http.headers['User-Agent'] = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10; rv:33.0) Gecko/20100101 Firefox/33.0"
这个if语句不起作用,因为它似乎不能够读取文本......在时,有一个验证码,它只是停止了浏览器。
end
puts http.form_str
easy_c = EasyCaptchaSolver.new(image_url: "...")
easy_c.captcha
我希望能够刮掉图像的URL,我不知道怎么去nogokiri承认HTML代码刮掉,然后输入图片URL ..
else
browser.goto "http://soundcloud.com/you/sets"
end
的验证码HTML的样子:
您可以添加要刮的网站的HTML吗? – 2015-04-06 12:55:36
你想整页的HTML? @AlexGolubenko – marriedjane875 2015-04-06 13:23:43
仅用于验证码 – 2015-04-06 13:26:57