京东商城评论爬虫

article/2025/10/13 9:44:02

一、前言

基于评论信息做情感分析模型第一步,收集数据。这里准备抓取京东商城的物品评论,大致可以分为两步。

1、获取商品id

2、获取商品评论

二、实战

接下来的代码都基于scrapy框架编写,请确保已经了解scrapy基础知识。

1、获取商品id

从京东商城首页随意点击进入一个子类,这里选取家电类: https://jiadian.jd.com/,可以看到这个页面已经有商品存在:


很明显,这里的url后面的数字就这个物品id,右键点击查看源代码,查找: item.jd.com:


还不错,一个页面有400多个id,那么就可以直接用正则匹配把源码中的id取出来,代码如下:

class IdentitySpider(scrapy.Spider):name = 'identity'allowed_domains = ['www.jd.com']start_urls = []def start_requests(self):for _, url in PD_MAPS.items():yield Request(url)def parse(self, response):item = JdItem()ids = parse_info(response.body, 'item.jd.com.*?(\\d+)\.html', 1)for i in ids:item['info'] = i.strip()yield item
这里抓取完毕后在pipeline中将每一个id写入本地文件中,id抓取完毕。

2、抓取商品评论

随便点开一个商品,查看评论:


很明显,这是一个ajax的动态加载,那么这个接口地址就能找到了:


圈出来的部分很好理解,分别是商品id,评分(好、中、差),页数,直接拼起来就行了,代码如下:

class CommentSpider(scrapy.Spider):name = 'comment'allowed_domains = []start_urls = ['http://www.jd.com/']def parse(self, response):path = os.path.join(os.getcwd(), 'data', 'identity.txt')fr = open(path, 'r')urls = [(CM_URL.format(i.strip(), s, 0), s) for i in fr.readlines() for _, s in SC_MAPS.items()]for url, score in urls:yield Request(url, meta={'page': 0, 'score': score}, callback=self.parse_comment)def parse_comment(self, response):item = JdItem()meta = response.metaresponse_json = demjson.decode(txt=response.text, encoding='utf-8')if meta['page'] < int(response_json['maxPage']) and meta['page'] < 100:meta['page'] += 1url = u'='.join(response._url.split(u'=')[:-1])+u'='+str(meta['page'])yield Request(url, meta=meta, callback=self.parse_comment)for c in response_json['comments']:content = ''.join(c['content']).strip().replace(u'\n', u'').replace(u'\r', u'').encode('utf-8')item['info'] = '{} {}'.format(meta['score'], content)yield item
跟商品id一样共用pipeline,直接写到本地文件中,到这里就大功告成了,评论信息如下:

1 冲着5.99英寸的大屏幕去买,货到了一看怎么比我现在用的华为(5.5英寸)6X还小点,跟商家联系也无法沟通,退货商家说要自己承担邮费,我怎么觉得现在的京东商品和服务态度都越来越差了
1 为什么盒子上的型号是Y79A啊
1 可惜货到了物流不给看货!!物流也慢
2 手机不错,但是发货速度令人发指,11月18日20:25下单,下单时商品注明当日23:00前下单,次日11月19日到货,下单后迟迟不发货,找了三次京东服务,一直到11月20日中午才发货,11月21日早上才到货,京东的口碑还值得信任吗?
2 物流是在太慢了,等了4天了
2 玩游戏有点闪屏
2 有后悔药吗…!分辨率低果然不好,玩王者荣耀都不好看
2 和实物不和
3 错,挺好的,特别是还买了一张卡特实惠,感觉真的不错,很满意。
3 今东太快了!昨天下午下单,今中午就收到,就是号码不和我定的一样啊!

三、其他

详细代码可以在我的github上找到:https://github.com/lpty/crawl_tutorial
注意:本项目代码仅作学术交流使用



http://chatgpt.dhexx.cn/article/De1pFm89.shtml

相关文章

京东商品及评论 数据采集

好吧&#xff0c;下面的爬虫是同步的&#xff0c;其实可以用协程来写&#xff0c;效率会增加很多&#xff01; 对京东的商品基本信息&#xff0c;产品参数&#xff0c;商品评论进行采集 使用BeautifulSoup解析 注意&#xff1a;由于每个产品的评论只能采集100页&#xff0c;为…

爬虫京东评论+可视化

前期工作 选取一个网站&#xff0c;最好是教育网站&#xff0c;因为教育网站很少有反爬虫机制。 在网站内打开开发者工具&#xff0c;不同的浏览器开发者工具也不同&#xff0c;但都大同小异(这里使用的是谷歌)。 在开发者工具中确定你要爬虫的部分&#xff0c;找到我们爬取数…

京东手机评论的爬取

开篇 做论文的时候&#xff0c;最多接触的就是标准的数据集&#xff0c;几乎不需要太多的结构化处理&#xff0c;下载下来就是可以直接加载使用的数据&#xff0c;课题是有关评论分析的&#xff0c;但是论文针对的都是英文数据&#xff0c;而国内电商平台其实积累了大量的评论…

京东也做社交电商了

不知道大家有没有注意到&#xff0c;这两天朋友圈好像被京东商品给刷屏了&#xff0c; 身边不少大佬朋友都通过【芬香】在朋友圈带货。 我作为一个IT技术男&#xff0c;对于新出现的事物&#xff0c;自然也去研究了一番。下面就把我了解的信息分享给大家。 1、什么是「芬香」&a…

主存与内存

计算器内存条采用的是DRAM(动态随机存储器)&#xff0c;即计算机的主存。我们通常所说的内存容量即指内存条DRAM的大小。 但是&#xff0c;严格地说&#xff0c;内存是包括主存与高速缓存(Cache&#xff0c;基于SRAM)的。可能是由于Cache相较内存条容量很小&#xff0c;毕竟内…

CPU/内存分析

一、概念理解 程序运作原理&#xff1a;一个请求发送到服务器&#xff0c;首先经过网卡&#xff0c;然后通知cpu有待处理任务&#xff0c;CPU去运行操作系统指令&#xff0c;根据请求的端口号&#xff0c;找到对应的应用程序代码&#xff0c;安排线程去处理&#xff1b;由于程…

linux服务器查看cpu和内存

一、服务器CPU情况 1 查看物理CPU个数 cat /proc/cpuinfo | grep "physical id" | sort | uniq | wc -l 2 查看服务器CPU内核个数 cat /proc/cpuinfo | grep "cpu cores" | uniq 3 查看虚拟机查看核数 grep processor /proc/cpuinfo|wc -l 4 查看cpu内核频…

计算机中CPU是如何与内存交互的

这篇文章主要整理了一下计算机中的内存结构&#xff0c;以及 CPU 是如何读写内存中的数据的&#xff0c;如何维护 CPU 缓存中的数据一致性。什么是虚拟内存&#xff0c;以及它存在的必要性。如有不对请多多指教。 概述 目前在计算机中&#xff0c;主要有两大存储器 SRAM 和 D…

CPU访问内存

首先我们需要一个引子&#xff0c;引子如下&#xff1a; 作为一个计算机领域的工程师&#xff0c;这里有一个问题&#xff1a;有一个10米深的水池需要测量其水深&#xff0c;并在计算机&#xff08;或者微机&#xff09;上显示测量结果&#xff0c;保留小数点后一位。请概要的设…

计算机cpu、寄存器、内存区别

1、寄存器是中央处理器内的组成部分。它跟CPU有关。寄存器是有限存贮容量的高速存贮部件&#xff0c;它们可用来暂存指令、数据和位址。在中央处理器的控制部件中&#xff0c;包含的寄存器有指令寄存器(IR)和程序计数器(PC)。在中央处理器的算术及逻辑部件中&#xff0c;包含的…

CPU、内存、磁盘性能监控

CPU监控 网络由设备、服务器、路由器、交换机和其他网络组件组成。CPU 是网络中所有硬件设备的组成部分。它负责设备的稳定性和性能。企业严重依赖网络&#xff0c;企业硬件的处理能力决定了网络的容量。随着 CPU 功能和硬件的快速发展&#xff0c;组织必须规划其容量并监控其…

内存、CPU、硬盘

目录 内存虚拟内存 硬盘扩充内存和硬盘CPUCPU 频率CPU 高速缓存CPU三级缓存缓存行 CPU-内存的工作原理 内存 内存是外存与CPU进⾏沟通的桥梁&#xff0c;计算机中所有程序的运⾏都在内存中进行。 内存(Memory)也称内存储器和主存储器&#xff0c;它用于暂时存放CPU中的运算数据…

内存、CPU、显存、GPU

底盘中经常会出现资源、算力等词语&#xff0c;对于里面的CPU、内存、GPU、显存&#xff0c;究竟是什么&#xff0c;这里主要对此进行一个基础认识。 一、内存 内存(Memory)也被称为内存储器&#xff0c;主要用来暂时存放CPU中的运算数据及与硬盘等外部存储器交换的数据。只要…

CPU 与 内存

CPU 与 内存 CPU控制器控制单元指令译码器指令寄存器 运算器ALU算数运算器逻辑运算器 寄存器L1&#xff0c;L2数据寄存器&#xff0c;程序计数器&#xff0c;段寄存器&#xff0c;通用寄存器&#xff0c;标志寄存器 内存 CPU 控制器 控制单元 时序控制&#xff0c;指令控制 …

cpu与内存的工作原理

计算机最核心的俩大部分&#xff1a;cpu和内存。哪它们之间有什么联系呢&#xff1f; 程序是在内存里运行的&#xff0c;程序要运行语句需要cpu发出指令给程序&#xff0c;程序收到指令后就会找到main方法&#xff0c;把执行语句的指令和需要的数据分别给cpu里的pc和registers…

cpu和内存

CPU ( Central Processing Unit &#xff09;是一块超大规模的集成电路板&#xff0c;是计算机的核心部件&#xff0c;承载着计算机的主要运算和控制功能&#xff0c;是计算机指令的最终解释模块和执行模块。硬件包括基板、核心、针脚&#xff0c;基板用来固定核心和针脚&#…

CPU、内存、缓存的关系

术语解释 &#xff08;1&#xff09;CPU&#xff08;Central Processing Unit&#xff09; 中央处理器 &#xff08;2&#xff09;内存 内存用于暂时存放CPU中的运算数据&#xff0c;以及与硬盘等外部存储器交换的数据。它是外存与CPU进行沟通的桥梁&#xff0c;内存的运行决定…

操作系统系列——CPU和内存

操作系统作为所有程序运行的载体&#xff0c;了解其基本组成和运行的逻辑也是十分重要的。虽然要弄明白它的方方面面需要花很长的时间&#xff0c;但作为底层码弄&#xff0c;弄清楚与平常程序打交到的CPU、内存、磁盘等工作原理也十分重要。因此这里我将学习的过程和知识点做一…

【IC卡】终极版复卡器操作方法 ID卡读取方法

终极版复卡器操作方法 ID卡读取方法&#xff1a; http://rfid.polinktech.com/RFID-Toolkit/RFID%E8%AF%BB%E5%8D%A1%E5%99%A8%E6%93%8D%E4%BD%9C%E8%AF%B4%E6%98%8E.pdf 1. 放上ID卡&#xff0c;,显示如图界面&#xff0c;点击读取卡号。 2. 读取卡号后&#xff0c;放上新的…

NFC手机模拟加密门禁卡

CSDN仅用于增加百度收录权重&#xff0c;排版未优化&#xff0c;日常不维护。请访问&#xff1a;www.hceng.cn 查看、评论。 本博文对应地址:https://hceng.cn/2019/07/12/NFC手机模拟加密门禁卡/#more 记录小米手机NFC模拟加密门禁卡&#xff0c;以及Proxmark3的使用。 0. 缘…