京东商品评价信息采集爬虫开发教程


本文主要介绍京东商品评价信息采集爬虫”的开发教程,爬取商品的第一页评价信息,爬取字段包括评价者、评价时间和评价内容,文章结尾会附上完整的爬虫代码

 

采集商品URLhttps://item.jd.com/2543188.html


使用功能点

· JsonPath内容抽取

· onProcessScanPageafterExtractField回调函数


接下来,给你详细说明“京东商品评价信息采集爬虫”的开发过程


步骤1 创建爬虫

注册并登录神箭手,进入神箭手控制台。

点击“新建应用”,选择“爬虫”,点击“下一步”。


输入爬虫名称京东商品评价信息采集爬虫”,选择“编辑模式”,点击“创建”,神箭手爬虫创建成功。


步骤2 分析网页&开发爬虫

本文使用Chrome浏览器分析京东商品网页,按“F12”快捷键打开浏览器“开发者工具”。

点击商品评价(125万+)”,商品评价数据便会自动加载进来。


在浏览器“开发者工具”中选择“JS”,搜索“sclub”,便可找到存放商品评价信息的URL。


分析请求该URL返回的JSONP数据,结合神箭手开发文档,在神箭手爬虫编辑页开发爬虫代码。


步骤3 测试并运行爬虫

爬虫开发完成后,点击“测试”按钮看爬虫的爬取结果是否正确。


测试通过后,返回爬虫总览页,点击启动爬虫”,稍等片刻,爬虫就会爬取到数据了。


步骤4 数据发布与导出

爬虫爬到数据后,可以选择将数据发布到网站或数据库中,点此查看神箭手数据发布详细教程


此外,还可选择将数据“导出”,点此查看神箭手数据导出详细教程


神箭手爬虫导出数据示例,如下图所示:


“京东商品评价信息采集爬虫”完整示例代码

/**
    京东商品评价信息采集爬虫源码
    只爬第一页商品评论数据
**/

var configs = {
    domains: [".jd."],
    scanUrls: ["https://item.jd.com/2543188.html"],
    contentUrlRegexes: [
        /http[s:\/]+sclub\.jd\.com\/.*/
    ],
    helperUrlRegexes: [""],
    fields: [
        {
            name: "comments",
            alias: "商品评价",
            selectorType: SelectorType.JsonPath,
            selector: "$.comments",
            repeated: true,
            children:[
                {
                    name: "author_name",
                    alias: "评价者",
                    selectorType: SelectorType.JsonPath,
                    selector: "$.nickname",
                    required: true,
                    primaryKey: true
                },
                {
                    name: "publish_time",
                    alias: "评价时间",
                    selectorType: SelectorType.JsonPath,
                    selector: "$.creationTime",
                    type: "timestamp",
                    primaryKey: true
                },
                {
                    name: "content",
                    alias: "评价内容",
                    selectorType: SelectorType.JsonPath,
                    selector: "$.content",
                    primaryKey: true
                }
            ]
        }
    ]
};

configs.onProcessScanPage = function(page, content, site) {
    var m = /\/(\d+)\.html/.exec(page.url);
    if (m && m[1]) {
        var options = {
            method: "get",
            headers: {
                referer: page.url
            }
        };
        var commentUrl = "https://sclub.jd.com/comment/productPageComments.action?productId=" + m[1] + "&score=0&sortType=1&page=0&pageSize=10";
        site.addUrl(commentUrl, options);
    }
    return false;
};

configs.onProcessContentPage = function(page, content, site) {
    return false;
};

configs.afterExtractField = function(fieldName, data, page, site) {
    if (fieldName == "comments.publish_time") {
        var timestamp = Date.parse(data);
        return isNaN(timestamp) ? 0 : timestamp/1000;
    }
    return data;
};

var crawler = new Crawler(configs);
crawler.start();


神箭手大数据市场“京东商品评价采集爬虫”购买地址:http://www.shenjian.io/index.php?r=market/product&product_id=301

分享到: