京东爬取评论简单分析

1.定义一个获取所有评论的函数

def get_comment(url):
"""
获取评论函数
"""
i = 0
# 获取所有的评论,直到正则匹配为空的时候停止
while True:url = "http://club.jd.com/comment/productPageComments.action?callback=fetchJSON_comment98vv6&productId=11510787177&score=0&sortType=5&page=" + str(i) + "&pageSize=10&isShadowSku=0&fold=1"headers = {"User-Agent": random.choice(ua), }response = requests.get(url, headers=headers)# 评论列表comment_list = re.compile(r'"content":"(.*?)"').findall(response.text)for comment in set(comment_list):# 打印评论print comment# 评论终止的条件if len(comment_list) == 0:breaki += 1

2.先获得你搜索关键词的url:

#keyword是你搜索的关键词,每类商品基本都是100页,京东page页数是奇数变化
for j in range(101):url = "https://search.jd.com/Search?keyword=%E7%94%B7%E8%A1%A3&enc=utf-8 &page=" + str(j)

3.根据这个url就可以获得商品列表的前28个数据,一共有60个,另外有四个广告:

res = requests.get(url, headers=headers
# 使用正则提取出商品的id字段
id_list =re.compile('J_AD_(\d+)').findall(res.content)
# print len(id_list)
# 定义一个列表来存放所有的id
str_id = []
for id in id_list:# 详细页面的urldetail = "http://item.jd.com/"+str(id)+".html"# 添加id到列表str_id.append(id)# 这个是获取评论的urlcomment_url = "http://club.jd.com/comment/productPageComments.action?callback=fetchJSON_comment98vv6&productId="+str(id)+"&score=0&sortType=5&page=0&pageSize=10&isShadowSku=0&fold=1"# 调用获取评论的函数get_comment(comment_url)
# 拼接id
str_id = ",".join(str_id)

4.另外的28条数据是动态加载的,鼠标下载的时候会加载出来,加载这个是要根据前面页面的id信息和翻页信息,

# 这是加载出来的url,其中后面的str_id是前面获取所有的id的拼接在一起,用,隔开
url2= "https://search.jd.com/s_new.php?keyword=%E7%94%B7%E8%A1%A3&enc=utf-8&qrst=1&rt=1&stop=1&vt=2&wq=%E7%94%B7%E8%A1%A3&page="+str(j+1)+"&s=25&scrolling=y&log_id=1504059001.28625&tpl=3_L&show_items=" + str_id
# 这个是拼接请求的头,分析得到这个Referer字段
headers_page = "https://search.jd.com/Search?keyword=%E7%94%B7%E8%A1%A3&enc=utf-8&page="+str(j)+"&s=1"
# 其中请求头要添加 Referer字段,上一页的关联地址,头的page是请求主页的page
headers_next = {"User-Agent": random.choice(ua),"Referer": headers_page}# 获取后面的数据
url2= "https://search.jd.com/s_new.php?keyword=%E7%94%B7%E8%A1%A3&enc=utf-8&qrst=1&rt=1&stop=1&vt=2&wq=%E7%94%B7%E8%A1%A3&page="+str(j+1)+"&s=25&scrolling=y&log_id=1504059001.28625&tpl=3_L&show_items=" + str_id
headers_page = "https://search.jd.com/Search?keyword=%E7%94%B7%E8%A1%A3&enc=utf-8&page="+str(j)+"&s=1"
# 其中请求头要添加 Referer字段,上一页的关联地址
headers_next = {"User-Agent": random.choice(ua),"Referer": headers_page}
# 发送请求
res1 = requests.get(url2, headers=headers_next)
# 使用正则得到id的列表
id_list2 = re.compile('J_AD_(\d+)').findall(res1.content)
for id2 in id_list2:# 详细页面的url,detail_url = "http://item.jd.com/"+str(id2)+".html"# 评论的urlcomment_url = "http://club.jd.com/comment/productPageComments.action?callback=fetchJSON_comment98vv6&productId="+str(id2)+"&score=0&sortType=5&page=0&pageSize=10&isShadowSku=0&fold=1"# 调用评论函数get_comment(comment_url)

京东爬取评论简单分析相关推荐

  1. python爬猫眼电影影评,Python系列爬虫之爬取并简单分析猫眼电影影评

    前言 今天给大家介绍利用Python爬取并简单分析猫眼电影影评.让我们愉快地开始吧~ 开发工具 Python版本:3.6.4 相关模块: requests模块: pyecharts模块: jieba模 ...

  2. python爬取豆瓣短评_爬取并简单分析豆瓣电影短评

    导语 利用Python爬取并简单分析豆瓣电影短评. 说起来挺逗的,去年爬豆瓣短评的时候还是可以爬个几万条数据的,昨天我还想着终于可以起个唬人的标题了,什么爬取了xxx电影的xxx万条数据. 于是昨晚写 ...

  3. 爬虫入门-京东评论爬取和简单分析[学习笔记]

    随便点击一个商品,我点的是"https://item.jd.com/3533885.html" 查看评论是否动态数据:点击改变评论页数(图中1处),网址(图中2处)不会变,说明是动 ...

  4. Python爬取并简单分析2024年普通高校招生专业(专业类)选考科目要求

    推荐教材: <Python网络程序设计(微课版)>,ISBN:978-7-302-58312-7,董付国,清华大学出版社,2021年8月出版,京东.当当.淘宝均有销售 配套资源: 教学大纲 ...

  5. python爬取bilibili数据_BiliBili爬取数据简单分析

    爬虫介绍:从1号直播间爬取发弹幕人账号,当时在线人数有五万左右,但到8000多时每3s发弹幕的新用户已经很少了,所以我就以这8000多人为起始点,将其放入队列中,取出一个,获得其关注人数,粉丝数,并将 ...

  6. 自如房源爬取及简单分析——python语言实现

    背景及任务简介 自如作为在长租公寓行业的头部公司,目前已覆盖国内一线城市和部分新一线城市,因其在租房间种类丰富,装修美观,有大量的"管家"形成了线上线下闭环,且租户具有极高粘性.本 ...

  7. python马蜂窝网站的爬取和简单分析。

    完整代码看这里 获得热门省编号和直辖市编号 蚂蜂窝中的所有城市.景点以及其他都有一个专属的5位数字编号(id号),我们第一步要做的就是获取mddid,http://www.MaFengWo.cn/md ...

  8. Selenium 爬取评论数据,就是这么简单!

    本文来自作者 秦子敬 在 GitChat 上分享「如何利用 Selenium 爬取评论数据?」,「阅读原文」查看交流实录 「文末高能」 编辑 | 飞鸿 一.前言 我们知道,如今的 web 网页数据很多 ...

  9. 哪吒票房逼近40亿,用python爬取哪吒短评分析

    目录 前言 分析 具体步骤 登录 爬取与存储 可视化分析 结语 前言 暑期档电影惨淡,但随着哪吒爆红开拓了新局面.这也是国产动画的首次爆红.在哪吒刚出,笔者以为最多10亿就算不错的了.没想过仅过了几天 ...

最新文章

  1. 搜狗输入法电脑版_搜狗输入法小米版升级简介
  2. 新的JavaScript库邀请程序员使用Canvas进行创意编程
  3. python给用户打标签_python用户评论标签匹配的解决方法
  4. .NET Core SignalR Redis底板详解(一)
  5. php批量评价,彻底杜绝 WordPress 批量垃圾评论留言的三步曲
  6. 奇安信代码卫士报送的漏洞获评“CNVD平台2019年度最具价值漏洞”
  7. JS中的逻辑运算符、||,位运算符|,
  8. python软件如何下载-python软件怎么样?实际的操作方法来了
  9. 个人学习笔记:路由交换学习思路
  10. wifi信号强度测试软件 mac,Wifi Signal Strength for Mac(无线WiFi信号强度统计软件)
  11. 一个完整的App应该具备哪些功能
  12. 小程序源码:仿各大APP种树微信小程序源码下载-简单快速上手
  13. 统计学中的真阳性(TP),假阴性(FN),假阳性(FP),真阴性(TN)怎么理解?
  14. 可爱猫咪,用 CSS 告诉你为何大橘为重!!
  15. 全屏状态下的ESC键监听处理
  16. eclipse与数据库连接插入或者拿出数据出现乱码该如何解决。
  17. 初学者C语言练习题-入门
  18. 激光雷达的厮杀18年:西方“诸神黄昏”,东方“新王隐现”
  19. 苹果地图副总裁_苹果高管动荡:两员大将水火不容 “地图门”是引爆点
  20. 安卓手机 模拟辅助显示设备

热门文章

  1. hadoop metrics 各参数解释
  2. excel小写转大写公式_EXCEL中文小写数字怎么转化成阿拉伯数字呢?
  3. python nltk 10 分析句子的意思
  4. linux基本功系列-help命令实战
  5. 令人心焦的“发票时间”,你有过吗?
  6. 一、C++ 标准输入与输出
  7. 微软行星云计算Microsoft Planetary Computer 账号内测申请开通和如何根据自己的需求配置电脑环境(R/python/GIS等)
  8. gg说,屁股决定脑袋
  9. 自制的 .net framework 强命名工具(支持.net4)
  10. 一分钟和陌生人交朋友