本文主要介绍在神箭手上开发“爱站网关键字挖掘采集爬虫”的过程,爬虫主要实现批量输入关键字并爬取数据的功能,选择性登录功能(登录后爬取的数据更多),爬取字段包括长尾词数量、收录数和优化难度等字段。
爱站网是一个站长们经常使用的工具,是因为其具有长尾关键词挖掘的功能,做SEO的童鞋们都知道它的价值,而且对网站内容生产方向、结构规划,TDK编写都十分有帮助。
采集网站URL:https://ci.aizhan.com
使用功能点:
· 自定义设置
· initCrawl、beforeCrawl、onProcessContentPage和afterExtractField回调函数
下面,给你详细说明“爱站网关键字挖掘采集爬虫”在神箭手上的开发过程:
步骤1 创建爬虫
注册并登录神箭手,进入神箭手控制台。
点击“新建应用”,选择“爬虫”,点击“下一步”。
输入爬虫名称“爱站网关键字挖掘采集爬虫”,选择“编辑模式”,点击“创建”,神箭手爬虫创建成功。
步骤2 分析网页&开发爬虫
要在神箭手上开发爬虫,首先需要分析目标网站,本文使用Chrome浏览器分析爱站网关键字挖掘网页,按“F12”可以打开浏览器“开发者工具”。
1.“不登录”情况分析
不登录的话,一个关键字只能爬取最多100条数据。输入“旅游”并点击“查询”,网页加载完成后,是不是发现网页url变成了这个“https://ci.aizhan.com/65c56e38/”。
是不是很纳闷,怎么关键字变成一堆数字了?
其实,这是爱站网给你下的绊子,给关键字做了一次处理,不过这点困难阻挡不了我们前进的脚步。右击鼠标,查看“网页源码”,找到encode_unicode_param函数,关键字就是通过此函数进行处理的。
但函数源码并不在此,需要回到查询后的网页,按“F5”刷新网页,在浏览器“开发者工具”中选择“Sources”,找到“script.js?v=0108”文件,就能找到encode_unicode_param函数源码了,这样一来就可以顺利拼出关键词查询链接了,然后你就可以在神箭手爬虫编辑页开发非登录爬虫了。
2.“登录”情况分析
登录后,可爬取多页数据,打开爱站网登录页。
按“F12”打开浏览器“开发者工具”选择“Network”,勾选“Preserve Log”,输入“用户名、密码和验证码”,点击“登录”,分析发送的POST请求即可,并使用神箭手提供的solveCaptcha函数实现验证码识别逻辑。
注意:文章结尾有爱站网登录的代码片段。
最后,结合“神箭手开发文档”,在神箭手爬虫编辑页开发爬虫即可。
步骤3 测试并运行爬虫
爬虫开发完成后,点击“测试”按钮,检查爬虫的爬取结果是否正确。
测试通过后,进入“爬虫设置”页,设置“代理IP”、“文件云托管”,输入需要爬取的关键字,最后点“保存”。
返回爬虫总览页,点击“启动爬虫”,稍等片刻,爬虫就会爬到数据了。如果嫌弃爬虫的爬取速度,要么增加节点,要么优化爬虫代码。
步骤4 数据发布与导出
爬虫爬到数据后,可以选择将数据“发布到网站或数据库”中,点此查看神箭手数据发布详细教程。
此外,还可选择将数据“导出”,点此查看神箭手数据导出详细教程。
神箭手上开发的“爱站网关键字挖掘采集爬虫”导出数据示例,如下图所示:
爱站网登录代码片段:
//登录链接
var loginUrl = "https://www.aizhan.com/login.php";
//登录时发送的POST请求参数
var options = {
method: "POST",
data: {
refer: "https://ci.aizhan.com/",
username: username,//用户名
password: password,//密码
code: code//验证码
}
};
//发送登录请求
site.requestUrl(loginUrl, options);
//判断是否登录成功
if (site.getCookie("userSecure")) {
console.log("登录成功!");
return true;
}
网友评论