Python 动态爬虫爬取京东商品评论

1. 概述

京东商城是Python爬虫初学者试手的经典平台,反爬虫程度较低,但评论采取了动态加载的方式,爬取京东商品评论是学习动态爬虫的一个极佳方法。

动态爬虫,即针对动态加载JSON文件网页的爬虫,其原理与静态爬虫没有本质区别,只是不爬取所见的静态目标网页,而是寻找该网页所加载的JSON文件,爬取JSON文件中的内容。

2.目标观察

观察京东具体商品评论页面:

点击商品评价页:

发现商品评价翻页的url不改变,可推测出其采用动态加载的方式,同时,会发现直接获取该页面并没有评论的内容。

因此我们寻找其动态加载文件。

右键打开检查模式,点击network按钮:

在网页中点击下一页,观察右侧栏中新加载出来的文件:

发现可能是评论内容文件,点击查看,发现确实如此,复制下该文件的url:

3. 具体爬取

从上文中我们获取到了商品评论的动态加载文件的url,接下来我们至需要对该文件进行get爬取即可。

同静态爬虫类似,构造header,输入网址,并使用get进行请求,下载其文本内容。

header = {"user-agent":'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36'}
url = "https://club.jd.com/comment/productPageComments.action?callback=fetchJSON_comment98&productId=100021400874&score=0&sortType=5&page=2&pageSize=10&isShadowSku=0&rid=0&fold=1"
time.sleep(random.random())
content = requests.get(url = url,headers = headers).text

然后我们观察get到的content内容,发现并不是静态网页的HTML,而是一种类似于字典的文本内容,这即是JSON文本格式,但京东获取到的JSON文本有干扰,不是一个完全的类似字典类型文本,因此我们需要去除掉花括号前后的无意义字符串:

if content != None:content = content.strip('fetchJSON_comment98vv385();')

然后我们使用json模块对其进行解析,并从中提取我们需要的信息:

jbs = json.loads(content)
comments = jbs["comments"]
for comment in comments:print(comment["id"],":",comment["content"])

从而我们就得到了京东商品评论。

4. 全部代码:

header = {"user-agent":'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36'}
url = "https://club.jd.com/comment/productPageComments.action?callback=fetchJSON_comment98&productId=100021400874&score=0&sortType=5&page=2&pageSize=10&isShadowSku=0&rid=0&fold=1"
time.sleep(random.random())
content = requests.get(url = url,headers = headers).text
if content != None:content = content.strip('fetchJSON_comment98vv385();')、jbs = json.loads(content)
comments = jbs["comments"]
for comment in comments:print(comment["id"],":",comment["content"])

Python动态爬虫爬取京东商品评论相关推荐

  1. python制作爬虫爬取京东商品评论教程

    python制作爬虫爬取京东商品评论教程 作者:蓝鲸 类型:转载 本文是继前2篇Python爬虫系列文章的后续篇,给大家介绍的是如何使用Python爬取京东商品评论信息的方法,并根据数据绘制成各种统计 ...

  2. python爬取页面内容由京东提_python制作爬虫爬取京东商品评论教程

    本篇文章是python爬虫系列的第三篇,介绍如何抓取京东商城商品评论信息,并对这些评论信息进行分析和可视化.下面是要抓取的商品信息,一款女士文胸.这个商品共有红色,黑色和肤色三种颜色, 70B到90D ...

  3. Python 爬取京东商品评论 + 词云展示

    利用python爬虫爬取京东商品评论数据,并绘制词云展示. 原文链接:https://yetingyun.blog.csdn.net/article/details/107943979 创作不易,未经 ...

  4. Python爬取京东商品评论

    京东商城的页面不是静态页面,其评论信息存放于json文件中,由ajax控制,所以我们在浏览器上看到的网页源代码和用Python爬下来的是不一样的,所以我们真正要爬取的是评论数据所存放的json文件. ...

  5. Python爬取京东商品评论和图片下载

    Python爬取京东商品评论和图片下载 代码仅供学习使用,切勿扩散并且频繁爬取网站 贴上代码和注释,方便自己下次看 import requests import time import json im ...

  6. 爬虫爬取京东商品详细数据 (品牌、售价、各类评论量(精确数量)、热评词及数量等)json解析部分数据

    文章目录 前言 一.数据保存格式设置及数据库准备(CentOS云mysql数据库) 1.分析数据需求(单一商品为例) 2.数据库保存格式 3.用到的数据库操作及指令 二.网页分析 1.分析网页源码,确 ...

  7. 商品评论html,京东商品评论太多(带你一键爬取京东商品评论)

    京东商品评论太多(带你一键爬取京东商品评论) 一.项目说明 1.项目背景 一天,一朋友扔给我一个链接https://item.jd.com/100000499657.html,让我看看这个歌商品的所有 ...

  8. python翻页爬取京东商品评价

    python翻页爬取京东商品评价 以小米手机评论为案例 1.找到目标的url 2.检查响应结果 3.解析json数据,发现相应数据无法成功解析 注意:json数据一般都是以大括号或中括号开头或者结尾的 ...

  9. scrapy爬取京东商品评论并保存至Mysql数据库中

    scrapy爬取京东商品评论并保存至Mysql数据库 一.总体概述 二.实践过程 2.1网页解析 2.2使用单线程爬取代码如下: 2.3使用scrapy爬取数据 2.4绘制词云图结果: 三.总结 一. ...

最新文章

  1. 【跃迁之路】【530天】刻意练习系列289(2018.07.20)
  2. 值域范围 tf.clip_by_value的用法
  3. Leetcode 147. 对链表进行插入排序 解题思路及C++实现
  4. 2020蓝桥杯省赛---java---C---1(约数个数)
  5. python实例方法、静态方法和类方法
  6. java分隔符 字符串_用Java构建带分隔符的字符串的最佳方法是什么?
  7. PAT乙级1011.A+B和C (15)(15 分)
  8. [高性能javascript笔记]1-加载和执行
  9. Java:Spring的IOC原理(大白话解释)
  10. 动图:七分钟帮你理解什么是KMP算法?
  11. difference softreference and weakreference
  12. 中文界面blend_使用Blend设计出符合效果的WPF界面
  13. 学校计算机管理员安全责任书,实验室管理员安全责任书
  14. 编译google libyuv so库
  15. Python下载视频
  16. web系统变慢了,怎么排查原因
  17. 阿里巴巴矢量图标库全选
  18. 大学生如何在网上赚零花钱,适合学生党可做的零花钱项目
  19. 思维导图 XMind 闯关之路(第01关)新建文件 建立分支
  20. 搜索框实现模糊查询方法 - js

热门文章

  1. OCI跨租户(Tenancy)Object Storage文件复制
  2. 女装网 www.nzw.com.cn
  3. 微信开发笔记——微信网页登录授权,获取用户信息
  4. 天兔(Lepus)监控操作系统(OS)安装配置
  5. 【第三课】UAV倾斜摄影测量三维建模软件
  6. 89. 格雷编码 Python
  7. 面试经历深信服面试问题
  8. 轻量级简约的自动采集小说程序源码
  9. 美颜SDK如何接入到硬件设备实现美颜拍摄?
  10. H5+CSS3+JS/JQ 实现京东首页