python爬虫(6)——获取天猫商品评论信息

本文以读取商品评论的json数据的方式获取天猫商品评论,本文所采用的方法借鉴自知乎某大神(https://www.zhihu.com/question/36524413),可以非常方便地爬取特定商品的评价信息,但操作时需要熟悉url中各参数的含义及获取方式

1.爬取天猫商品评论信息示例

1.1 源代码如下所示:

# -*- coding: utf-8 -*-
"""
Created on Thu Jul  6 16:56:32 2017

@author: Administrator
"""

import requests
import json

#商品评论的JSON数据
url = 'https://rate.tmall.com/list_detail_rate.htm?itemId=541396117031&spuId=128573071&spuId=128573071&sellerId=2616970884&order=3&currentPage=1&append=⊙&content=1'
req = requests.get(url)
jsondata = req.text[15:]
data = json.loads(jsondata)

#输出页面信息
print('page:',data['paginator']['page'])
#遍历评论信息列表
for i in data["rateList"]:
    #输出商品sku信息
    print(i['auctionSku'])
    #输出评论时间和评论内容
    print(i['rateDate'],i['rateContent'])
    info = i['appendComment']
    #判断是否有追加评论
    if info:
        print(info['commentTime'])
        print(info['content'])
    print('======')

1.2 测试结果如下图所示:

这里写图片描述

天猫商品原始评论截图如下图所示:

这里写图片描述

对比上面两张图片,可以发现已经成功获取到该商品近期的评论信息

2.URL中各参数详细分析

上面虽然能够成功获取天猫商品评论信息,但是只能获取特定商品某一页的评论信息,并且url地址也已经事先给出来了。那如果想获取其他类别商品的多页评论数据怎么办呢?还是采用同样的方式,只不过需要对url地址中参数进行修改。上述代码中url详细地址如下所示:

url = 'https://rate.tmall.com/list_detail_rate.htm?itemId=541396117031&spuId=128573071&spuId=128573071&sellerId=2616970884&order=3&currentPage=1&append=⊙&content=1'

仔细分析该url可以发现该url有如下固定格式:
其中,https://rate.tmall.com/list_detail_rate.htm?为商品评论数据的固定开头,itemId商品IDspuId店铺IDsellerId店主IDorder取值的不同对应不同的评论排序方式currentPage表示想要获取第几页评论数据append表示是否有追加评论
下面介绍一下各项参数的获取方式,itemId可以在商品详情页URL中获取,如下图所示:

这里写图片描述

spuIdsellerId则需要在商品详情页源代码中获取,如下图所示:

这里写图片描述

后面的几项参数不同的取值对应不同商品评论信息,可以根据自己的需要进行尝试。当然,这种方法虽然能够非常简便的获取商品评论信息,但还需要人工修改参数,还有待进一步完善,未完待续。

  • 1
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值