我们希望能够自动化网站中的某些任务,例如让用户“登录”,执行某些功能,读取他们的账户历史记录等。
我们尝试使用普通的POST/GET来模拟这个过程,但问题在于,例如对于“登录”,该网站使用javascript代码来执行AJAX请求,并生成一些随机令牌。
是否可以真正地模拟一个Web浏览器?例如:
- 访问“www.[test-website].com” - 填写以下DOM项目: - 将DOM项目“用户名”填入“testuser” - 将DOM项目“密码”填入“testpass” - 点击DOM项目“btnSubmit”按钮 - 访问账户历史记录: - 读取HTML(以便我们可以解析每个不同历史记录项的信息) - ...
以上内容可以转换为以下示例代码:
我们尝试使用普通的POST/GET来模拟这个过程,但问题在于,例如对于“登录”,该网站使用javascript代码来执行AJAX请求,并生成一些随机令牌。
是否可以真正地模拟一个Web浏览器?例如:
- 访问“www.[test-website].com” - 填写以下DOM项目: - 将DOM项目“用户名”填入“testuser” - 将DOM项目“密码”填入“testpass” - 点击DOM项目“btnSubmit”按钮 - 访问账户历史记录: - 读取HTML(以便我们可以解析每个不同历史记录项的信息) - ...
以上内容可以转换为以下示例代码:
var browser = new Browser();
var pageHomepage = browser.Load("www.test-domain.com");
pageHomepage.DOM.GetField("username").SetValue("testUser");
pageHomepage.DOM.GetField("password").SetValue("testPass");
pageHomepage.DOM.GetField("btnSubmit").Click();
var pageAccountHistory = browser.Load("www.test-domain.com/account-history/");
var html = pageAccountHistory.GetHtml();
var historyItems = parseHistoryItems(html);