我正在使用Ruby和Watir打开irctc网页。我可以自动输入用户名和密码。 当谈到CAPTCHA时,我无法使用任何语法来输入CAPTCHA。因为我事先不知道它会是什么。我只想要一个简单的方法,我可以手动输入CAPTCHA。进入CAPTCHA时,我的脚本应该等待,然后它应该从脚本执行下一个语法。
type /?
答案 0 :(得分:0)
手动输入数据有两种方法: 1.添加sleep命令,以便您可以手动将Captcha手动输入浏览器:
sleep 30
添加获取命令,提示用户通过控制台输入验证码(我不知道验证码字段的实际名称):
captcha = gets.chomp
browser.text_field(:name,“captcha”)。set captcha
答案 1 :(得分:0)
验证码的全部内容是阻止对网站的自动访问。通常使用验证码的网站也有服务条款,禁止使用机器人或任何类型的自动化访问其网站。
比尝试抓取网站更好的方法是使用提供一个API的API。
IRCTC有一个API,你可以在这里获得有关它的信息:http://api.erail.in/
使用api比通过抓取和网络自动化尝试做你想要的更可靠,更快,更脆弱。我还建议您查看REST-CLIENT gem以便于发出请求和处理响应。