利用Ajax爬取淘宝评论,这里完整的补充一下,包括数据存储。
对于Ajax参数的分析,Python爬取平台评论,这篇文章分析过了这里不再重复了。
主要是完善一下代码。

import time
import requests
import csv
import json
import os
import random
class taobaoSpider_content():"""通过分析网址的Ajax获取淘宝商品评论其中get_page方法是构造出url并且返回json格式的文本数据,get_cotent方法用于提取数据并返回一个生成器,最后main方法整合输出结果Attributes: itemId:商品IDAttributes:currentPage:评论页码Attributes:sellerId:淘宝商家Id"""def __init__(self,itemId,sellerId,currentPage):self.currentPage=currentPageself.url="https://rate.tmall.com/list_detail_rate.htm?"self.headers={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.25 Safari/537.36 Core/1.70.3741.400 QQBrowser/10.5.3863.400","referer":"https://detail.tmall.com/item.htm","Cookie":'自己的Cookie'}self.itemId=itemIdself.sellerId=sellerIddef get_page(self):t_param=time.time()t_list=str(t_param).split(".")params={    "sellerId":self.sellerId,"itemId":self.itemId,"callback":str(int(t_list[1][3:])+1),"_ksTS":t_list[0]+t_list[1][:3]+"_"+t_list[1][3:],"currentPage":self.currentPage}res=requests.get(self.url,params=params,headers=self.headers)try:if res.status_code==200:res=requests.get(self.url,params=params,headers=self.headers).text[len(t_list[1][3:])+3:-1]res_json=json.loads(res)res_str=json.dumps(res_json,indent=4)return json.loads(res_str)except:return Nonedef get_content(self,json_data):if json_data!=None:for item in json_data.get("rateDetail").get("rateList"):content_time=item.get("rateDate")content_type=item.get("auctionSku")content_name=item.get("displayUserNick")content_data=item.get("rateContent")yield {"content_time":content_time,"content_type":content_type,"content_name":content_name,"content_data":content_data,}else:print("该页出错啦!")return Nonedef write_txt(self,data):"""这是将结果写入txt文本文档的格式将字典写入文本文档首先要利用json.dumps()转换成字符串格式.json.dumps的indent参数是为了美化输出json.ensure_ascii参数将数据输出程中文,同时要规定文件输出编码为utf-8"""with open("taobaocontent.txt","a",encoding="utf-8") as file:file.write(json.dumps(data,indent=2,ensure_ascii=False))file.write("\n")def write_csv(self,data):"""这是将结果写入csv文件将字典直接写入csv需要用到csv模块。具体可以参考相关文档这里要注意写入csv容易出现中文乱码,需要加encoding和newline参数。"""with open("taobaocontent.csv","a",encoding="utf-8-sig",newline='') as file:fieldnames=["content_time","content_type","content_name","content_data"]writer=csv.DictWriter(file,fieldnames=fieldnames)writer.writerow(data)def main(self):json_data=self.get_page()self.get_content(json_data)return self.get_content(json_data)if __name__=="__main__":for i in range(1,2):new_data=taobaoSpider_content(itemId=602210068322,sellerId=2616970884,currentPage=i)if new_data.main()!=None:for items in new_data.main():new_data.write_txt(items)else:passtime.sleep(random.randint(5,10))    #设置延时防止爬虫被封

以上代码已成功运行,如有错误,烦请告知,谢谢!

【爬虫】Python爬取电商平台评论完整代码相关推荐

  1. Python爬取电商平台充气娃娃用户评价,看看用户体验是什么样的!

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理. PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取 python免费学习资 ...

  2. 爬取电商平台数据,python爬取某维商品数据

    本次内容: 爬取电商平台数据,python爬取某维商品数据 课程亮点 动态数据抓包演示 json数据解析 requests模块的使用 保存csv 环境介绍 python 3.8 [最好用和老师一样的版 ...

  3. python爬取电商订单_Python探索之爬取电商售卖信息代码示例

    网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动的抓取万维网信息的程序或者脚本. 下面有一个示例代码,分享给大家: #! /usr/bi ...

  4. pyhton爬虫 爬取电商平台商品历史价格、最低价格(慢慢买网)

    主要使用的库: requests:爬虫请求并获取源码 re:使用正则表达式提取数据 json:使用JSON提取数据 pandas:使用pandans存储数据 #!coding=utf-8 import ...

  5. Python爬虫实战:selenium爬取电商平台商品数据

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者: 极客挖掘机 PS:如有需要Python学习资料的小伙伴可以加点击下 ...

  6. Python抓取电商平台数据 / 采集商品评论 / 可视化展示 词云图...

    前言 大家早好.午好.晚好吖 ❤ ~ 我给大家准备了一些资料,包括: 2022最新Python视频教程.Python电子书10个G (涵盖基础.爬虫.数据分析.web开发.机器学习.人工智能.面试题) ...

  7. python爬取淘宝商品做数据挖掘_Python 3爬虫 数据清洗与可视化实战 Python数据抓取技术 python3网络爬虫教程书籍 运用Python工具获取电商平台页面数据挖掘书籍...

    A8 书    名:Python 3爬虫 数据清洗与可视化实战 作 译 者:零一,韩要宾,黄园园 出版时间:2018-03 千 字 数:200 版    次:01-01 页    数:212 开   ...

  8. python爬取苏宁商品评论

    python爬取苏宁商品评论 爬取其他电商物品评论的案例如下: https://blog.csdn.net/coffeetogether/article/details/114296159 https ...

  9. 大数据之内衣的诱惑——抓取电商网站评论的秘密

    大数据之内衣的诱惑--抓取电商网站评论的秘密 前言 前段时间在知乎上看到有大神利用淘宝的评论信息,抓取购买内衣的型号和地域,分析出不同省份的女性身材指数分布.受之启发,我也动手研究了一下京东的评论信息 ...

最新文章

  1. Windows Forms高级界面组件-使用状态栏控件
  2. Linux 内核同步(二):自旋锁(Spinlock)
  3. 关于类DOTA游戏多样化技能系统的设计思考
  4. shiro 方法级别细粒度权限控制_Shiro的认证和权限控制
  5. 【Java】欧拉回路的判定
  6. 使用Django的models创建mysql数据库
  7. 什么是处理机的态?为什么要区分处理机的态?
  8. 设计素材画面太平淡?优秀案例网页教你如何用色彩丰富画
  9. 教会别人编程,你能收获什么?
  10. 无类域间路由CIDR
  11. c++对象模型大总结:第1-4章、对象初探与构造函数
  12. HFSS19 官方中文教程系列Workshops L01
  13. 【Windows 8】pid为4的system进程占用80端口的解决办法
  14. 数据采集与埋点简介之 代码埋点、可视化埋点与无痕埋点
  15. java企业级应用开发项目总结报告,基于Java软件项目开发岗位的企业实践总结报告...
  16. 美团外卖的用户画像怎么设计?用户画像全流程讲解!
  17. 报错已加载插件:fastestmirror, langpacksLoading mirror speeds from cached hostfileThere are no enabled repos
  18. 字符串编码(ASCII, GBK, ANSI, Unicode(‘\u‘), UTF-8编码)
  19. AJ-Report 数据源、数据集用法总结
  20. 产业链图谱:2021年中国半导体产业链图谱|产业链全景图

热门文章

  1. Android开发——创建项目和软件图标
  2. uniapp微信小程序pc端横屏解决方案
  3. NRF52832学习笔记(18)——RFID SI522使用
  4. 含文档+PPT+源码等]精品基于Uniapp+SSM实现的android在线点单系统APP[包运行成功]Java毕业设计Android项目源码
  5. 为什么-128的补码是1000 0000?
  6. Android 屏幕适配问题
  7. iPhone14和iPhone13的区别 苹果14和苹果13参数对比 哪个值得入手
  8. Qt核心特性之 —— 「信号(Signal)与槽(Slot)」机制
  9. 一元三次方程求解matlab_七年级下学期一元一次方程章节2020年高频典型题集(举一反三)...
  10. 自己组建APP开发定制团队需具哪些程序技术人员