我有一个最好被描述为 jQuery“脚本”的东西:
// Get the Textbooks URL
window.location = $($("li.dropDown").find("a")[0]).attr('href');
// Fill in Department Data
var depts = $($(".deptSelectInput")[0]).next().children();
$($(".deptSelectInput")[0]).val($($(".deptSelectInput")[0]).next().children().text());
$($(".deptSelectInput")[0]).blur();
// Fill in Course Data
var courses = $($(".courseSelectInput")[0]).next().children();
$($(".courseSelectInput")[0]).val($($(".courseSelectInput")[0]).next().children().text());
$($(".courseSelectInput")[0]).blur();
// Fill in Section Data
var sections = $($(".sectionSelectInput")[0]).next().children();
$($(".sectionSelectInput")[0]).val($($(".sectionSelectInput")[0]).next().children().text())
$($(".sectionSelectInput")[0]).blur();
// Submit the form, only if it's valid
if (($(".noTextBookCourseErrorMessage")[0].style.display) == "none") {
formSubmission();
}
// Extract all the ISBNs from the page
var regex = /\d+/g;
var isbn = $('li:contains("ISBN")').text().trim();
var isbns = [];
var tempIsbn = regex.exec(isbn);
while (tempIsbn) {
isbns.push(parseInt(tempIsbn[0], 10));
tempIsbn = regex.exec(isbn);
}
console.log(isbns);
它正是我需要做的。
当我在 Chrome 中打开开发工具并分别发布此脚本三次(一次加载新 URL,一次获取数据并提交表单,一次从新页面读取)时,它准确地返回给我我想要的数据.
我对蜘蛛很陌生,想知道自动化该过程的最佳方法是什么。基本上,我需要一个可以运行的脚本来完成我刚才所做的事情(分解三个 jQuery 帖子)。
我研究过 CasperJS 和机械化,但从未使用过。
有什么建议吗?