这是我第一次接触python时,我们学校做的项目实训,其实整个项目实训过程很简单,并没有什么难度,认真学学就会。
首先,我们要明确我们的目标:从京东上爬取产品的评论。一般评论都是进行情感分析,但我还没进行到那一步,只能先进行相关数据爬取下来,然后把爬到的数据以csv或者json格式保存成文件。
其次,找到数据源的京东官网首页,然后点击搜索框填入手机,拿苹果手机举例


由于可以看到我们的评论是动态的,且可能不断更新,我们便在谷歌网页右键,点击检查或者直接F12快捷键,之后就是显示以下这种界面:

点击右上角的network,发现下面是空的,我们刷新页面,network下面就有东西了,但是我们需要评论,直接下拉到评论,网址不会改变,我们可以点击下一页,多了comment部分,但同时在右边找到了评论所在的JS,具体怎么找呢,我们先点击JS,然后从最下面找,主要看Response,若是在Response里面找到了评论,那就是在那里,然后点击Headers,找到我们需要的URL


然后,我们便开始进行相应的爬虫第一步:

import scrapy
import re, json
from JDSpider.items import JDCommentItem
# 定义一个爬虫类,继承自scrapy框架的spider
class JDSpider(scrapy.Spider):# 定义爬虫名,保证在项目中是唯一的name="JDSpider"header = {"Accept": " */*","Accept-Language": "zh-CN,zh;q=0.9","Host": "club.jd.com","User-Agent": " Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.77 Safari/537.36"}# 告诉爬虫从哪个链接开始start_urls = ["https://club.jd.com/comment/productPageComments.action?callback=fetchJSON_comment98&productId=100006460635&score=0&sortType=5&page=0&pageSize=10&isShadowSku=0&fold=1"]# 另外一种告诉爬虫从哪个链接开始def start_requests(self):# 手动发起一个请求# headers自定义请求头# callback指定回调函数url_format = "https://club.jd.com/comment/productPageComments.action?callback=fetchJSON_comment98&productId=100006460635&score=0&sortType=5&page={}&pageSize=10&isShadowSku=0&fold=1"# 爬取10页评论for i in range(10):url = url_format.format(i)yield scrapy.Request(url=url, headers=self.header, callback=self.parse)
'nickname': 'A***洋','productColor': 'R7-4800H\\RTX2060\\8G\\512GSSD','score': 5}
2021-07-03 11:38:40 [scrapy.core.scraper] DEBUG: Scraped from <200 https://club.jd.com/comment/productPageComments.action?callback=fetchJSON_comment98&productId=100006460635&score=0&sortType=5&page=2&pageSize=10&isShadowSku=0&fold=1>
{'content': '包装保护:纸箱一个,卡的比较严实\n''外形外观:正面挺漂亮,反面蜂窝型散热的还好吧\n''画面品质:画面没有网上吐槽的那么不堪,至少对我来说够用了\n''跑分评测:加了一个8G镁光内存,43万跑分很不错\n''运行速度:运行速度很赞,开机20S内\n''游戏效果:玩了几把LOL,全特效无压力','nickname': '****7','productColor': 'R7-4800H\\新GTX1650Ti','score': 5}

这样,简单的某个人评论就爬下来了,我这边显示的数据是经过了格式化处理,主要还是为了让整个格式显的好看一点。
这样我们就获得了苹果手机前100条评论

***注意:
我们在获取网页响应时,网页编码是比较麻烦的,一般的如果是utf-8,我们就用text,若是乱码,可以用content,获得原始网页,然后为了显示正常,可以解码content.decode(‘gbk’),解码还是看源码是什么格式的。

补充说明:这篇文章主要是因为评论是以JS的格式保存在网页中,因此我们需要慢慢找到相应的JS网页。后期有时间,会进一步实现价格、评论爬取等等。

整个项目的代码都在这个链接里,有需要的自取哦!
链接:https://pan.baidu.com/s/1ZRrwR5zI02BO_HTyOj7wLg
提取码:7428

利用Python爬虫技术爬取京东商品评论相关推荐

  1. Python爬虫:爬取京东商品简介

    Python爬虫 目录导航 1.前言 目的 关于爬虫 关于Python 2.准备 工具 安装第三方库和包 3.敲代码 1.爬取网站信息 2.筛选需要的信息 3.持久化数据 4.扩展(分页爬取) 4.代 ...

  2. python爬虫_爬取京东商品写入Excel表

    新人的第二篇文章,写的不好请见谅 这段代码只是针对京东的商品信息爬取,很多都是根据页面源码去匹配获取数据的,别的网站用不了,也可能过一段时间官方修改了页面就不能用了,不过这里也只是提供学习使用,希望可 ...

  3. python爬虫实践-爬取京东商品图片

    这段时间,因为疫情在家无聊,想起了网络爬虫,之前有写过使用requests库,又学了下使用urllib库,在这里记录下学习过程. 首先使用的IDE是pycharm,解释器版本3. 第一步:分析某东的u ...

  4. 【Python爬虫】 爬取京东商品图片并下载

    1. 引入库 import requests from lxml import etree 2. 请求数据(headers 的作用是将请求伪装成浏览器的请求,可以跳过简单的爬虫拦截) url = &q ...

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

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

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

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

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

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

  8. Python爬取京东商品评论

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

  9. python爬虫爬取音乐_利用python爬虫实现爬取网易云音乐热歌榜

    利用python爬虫实现爬取网易云音乐热歌榜 发布时间:2020-11-09 16:12:28 来源:亿速云 阅读:102 作者:Leah 本篇文章给大家分享的是有关利用python爬虫实现爬取网易云 ...

最新文章

  1. SpringCloud 之 Zuul 网关搭建及配置
  2. [C# 网络编程系列]专题六:UDP编程
  3. 1、在Centos上安装Grafana
  4. SQL--数据库性能优化详解
  5. 【Git】Git 标签使用 ( 查询哈希码 | 创建标签 git tag v1.0 | 查询标签 git tag | 查询标签信息 git show v1.0 | 创建标签并指定说明 | 删除标签 )
  6. 理解微信小程序Wepy框架的三个事件交互$broadcast,$emit,$invoke
  7. “约见”面试官系列之常见面试题之第八十五篇之css响应式(建议收藏)
  8. php接口datatype= text,关于php:dataType:“json”不起作用
  9. MySql 查询显示
  10. 数据库工作笔记001---mysql 修改字符集_修改排序规则
  11. 剑指offer (05):替换字符串中空格 (C++ Python 实现)
  12. TLE5012B ESP32驱动程序、硬件电路设计、4线SPI通信,驱动完美兼容4线SPI不用改MOSI开漏推挽输出
  13. Educational Codeforces Round 118 (Rated for Div. 2)
  14. 国际品牌拧紧工具的优缺点
  15. oracle erp系统好用么,oracleerp系统优缺点
  16. 2017年3月14日-----------乱码新手自学.net 之Authorize特性与Forms身份验证(登陆验证、授权小实例)...
  17. python前面三个大于号是啥_JavaScript 无符号位移运算符 三个大于号 的使用方法...
  18. html如何实现空格?
  19. 图像技术_基础技术(0001)_RGB与CMYK的定义和详细区别
  20. android BannerView实现自动轮播广告的用法(参考自github)

热门文章

  1. BUUCTF:[XMAN2018排位赛]ppap
  2. C#中的?问号用法总结
  3. java hibernate 校验_Hibernate Validator校验
  4. 找到两个字符串重合的部分
  5. 扁鹊:指令与多轮问询对话联合微调的医疗对话大模型
  6. 病毒木马查杀实战第005篇:熊猫烧香之逆向分析(上)
  7. 通用高性能服务器cpu,全采用中国芯 浪潮发布飞腾CPU服务器
  8. 计算机应用基础毕业论文摘要,(毕业论文计算机应用基础.doc
  9. 几种单USB转多串口的方案
  10. slimerjs-自动登陆微博并回复