网页抓取工具 非常灵活,可以执行各种在线任务,例如检查网站链接和报告损坏的报告。
首先要做的是创建一个 刮 并分配您要检查的目标网站,然后将以下代码用于抓取说明。
var urls = Page.getTagAttributes('href', {"tag":{"equals":"a"}}); urls = Utility.Array.unique(urls); urls = Utility.Array.filter(urls, Data.readColumn("Links", "URL")); for (i = 0; i < urls.length; i++) { var url = urls[i]; Data.save(Page.getUrl(), "Links", "Found On"); Data.save(url, "Links", "URL"); if (Utility.URL.exists(url)) { Data.save("Found", "Links", "Result"); } else { Data.save("Missing", "Links", "Result"); } }
第一行 var urls = Page.getTagAttributes('href', {"tag":{"equals":"a"}});
提取所有超链接URL并将其放入 urls
变量。 下一行使用 Utility.Array.unique 使所有URL唯一的方法。
第三行确保不会对链接进行两次检查,以确保我们不会读取链接。 saved并以此过滤提取的链接。 如果要记录每个页面的链接,请删除此行。
清理完网址数据后,我们将遍历其余每个网址,并将其保存在 数据集 以及当前页面,然后使用 Utility.URL.exists
方法。 这样检查的结果也是 save数据集中的d。
或者,您可以通过替换代码来检查网站图片是否存在 Page.getTagAttributes('href', {"tag":{"equals":"a"}});
同 Page.getTagAttributes('src', {"tag":{"equals":"img"}});
.