目的
随着网上购物的流行,各大电商竞争激烈,为了提高客户服务质量,除了打价格战外,了解客户的需求点,倾听客户的心声也越来越重要,其中重要的方式就是对消费者的文本评论进行数据挖掘。
工具
1、Python3.7 + Pycharm
2、Google浏览器
爬虫
1、获取相应的URL
①本文对京东平台的手机进行爬虫,首先进入京东商城,选择一款手机,这里以华为P30为例
②按下F12,进入开发者工具,选择Network,点击下一页评论,刷新网页,在Name一栏找到productPageComments京东评论所在的数据包,复制Headers这里的URL并保存在一个txt中用于分析,并找到user-agent用于爬取时的浏览器伪装
③通过前三页的Request URL可以分析出京东手机每一页的评论都是根据page的增加来获取
④通过preview可以看到评论被服务器放在comments标签下,这里有每一位用户的评论信息,包括用户id、评论时间、产品型号和颜色等等,其中content对应的就是用户评论的内容。这样我们就能通过正则表达式解析出我们需要的内容。
⑤下面我们就通过上面的准备工作,开始爬取数据
import urllib.request
import re
import requests
import time
import random
import json
# 设置请求头
headers = ('User-Agent', 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36')
opener = urllib.request.build_opener()
opener.addheaders = [headers]
urllib.request.install_opener(opener)
# 获取URL
url = 'https://sclub.jd.com/comment/productPageComments.action?callback=&productId=100002749549&score=0&sortType=5&pageSize=10&isShadowSku=0&fold=1'
f = open('E:/comments/华为P30.txt', 'w', encoding='utf-8')
for i in range(0, 20):
t = str(time.time()*1000).split('.')
pagram = {
'page': i+1,
'callback': 'fetchJSON_comment98vv4092%s' %