基本上是为了获得我曾经这样做过的网页正文。
require "rest-client"
url="example.com"
test=RestClient.get(url)
但是现在网页已经设置了一个身份验证步骤。输入正确的密码后,您会转到PAGE A
else 转到PAGE B
。我的问题是如何使用 ID 和密码登录。您可以将页面视为此处的页面
我使用脚本输入凭据并查看我是否登录。
编辑:简化我想知道如何传递用户名和密码,我想知道单击登录按钮后打开的页面的 URL。
请注意,这根本不是劫持尝试。我只是想知道这是否可以做到。我提供的网站只是一个例子。
你实际上可以做到,但我会说这个解决方案不是很正确。
在您提供的链接页面上,您可以找到form
带有操作字段的标签action="/registration/chooseAuth.do;jsessionid=73f8323730d5704b00f173314aaeaad2de767c0c0c42.e34Nb38TbhaTbO0Tc34Sbx0Obhv0n6jAmljGr5XDqQLvpAe"
这是实际授权的链接,因此您可以执行以下操作:
RestClient.post(url_from_the_form, { login: 'foo', password: 'bar' })
它可能会起作用,但是。您所做的称为网络抓取或网络爬行。有一些更适合的工具:
机械化(最简单的)Capybara + Selenium WebDriver
Mechanize 适用于相当简单的网页。当涉及到更多的 AJAX 或 SPA 时,你最好选择 Capybara + Selenium。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句