前言

本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。

1 明确目的

通过访问天猫的网站,先搜索对应的商品,然后爬取它的评论数据。可以作为设计前期的市场调研的数据,帮助很大。

2 爬取评论并储存

(首先要进行登录,获取cookie)搜索你想收集的信息的评价,然后点开对应的产品图片。找到对应的评价的位置。

找到对应的位置之后就可以进行数据的爬取了,但是在爬取的过程中发现始终无法获取对应的数据。判断可能是因为没有添加cookie导致的,但是在添加了cookie之后发现依旧无法解决问题。

最后,发现应该是显示的数据是通过json解析之后显示在网页上的,因此需要多一些步骤来获取真正的爬取链接。

首先在network中,清除掉以往的数据信息,然后将页面进行刷新,复制其中的一条信息,进行搜索。在4中获得链接,并在5中获取到链接。

找到文件里面的访问url、cookie、referer、agent,将其复制在程序里。

大功告成,现在就可以进行数据的爬取了。

importpandas as pdimportrequestsimportreimporttime

data_list=[]for i in range(1,20,1):print("正在爬取第" + str(i) + "页")#构建访问的网址,这个网址可有讲究了

first = 'https://rate.tmall.com/list_detail_rate.htm?itemId=596452219968&spuId=1240258038&sellerId=1579115485&order=3&currentPage=1'last= '&append=0&content=1&tagId=&posi=&picture=&groupId=&ua=098%23E1hvB9vnvPgvUvCkvvvvvjiPn25pQjlhPFSv0jthPmPy6jiPR2MwAjnjRLF9gjlERphvCvvvphmjvpvhvUCvp8wCvvpvvhHhmphvLvUIUkUaQCAwe1O0747BhCka%2BoHoDOvfjLeAnhjEKBmAdXIaUExreTgcnkxb5ah6Hd8ram56D40OdiUDNrBlHd8reC69D70fd3J18heivpvUvvCCWUB0wV0EvpvVvpCmpJ2vKphv8vvvpHwvvvvvvvCmqvvvv4pvvhZLvvmCvvvvBBWvvvjwvvCHhQvvvxQCvpvVvUCvpvvv2QhvCvvvMMGtvpvhvvCvp86CvChh9P2s3QvvC0ODj6KHkoVQROhCvCLwMbra3rMwznsJWxS5gn1Uzvr4486Cvvyv9mQS7Qvvm4p%3D&needFold=0&_ksTS=1585406932472_453&callback=jsonp454'url= first + str(i) +last#访问的头文件,还带这个cookie

headers ={#用的哪个浏览器

'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.149 Safari/537.36',#从哪个页面发出的数据申请,每个网站可能略有不同

'referer': 'https://detail.tmall.com/item.htm?spm=a220m.1000858.1000725.1.464b6bbfQwJmpT&id=596452219968&skuId=4313616443848&areaId=340700&user_id=1579115485&cat_id=2&is_b=1&rn=2aaf4f3d019121cb4b9c1816fe2eb360',#哪个用户想要看数据,是游客还是注册用户,建议使用登录后的cookie

'cookie':'tk_trace=1; cna=BPoFF17G1wkCASShM8zuMe/z; dnk=%5Cu6211%5Cu624B%5Cu673A%5Cu9762%5Cu5305; uc1=tag=10&cookie16=UIHiLt3xCS3yM2h4eKHS9lpEOw%3D%3D&cookie14=UoTUP2Hg22VKGQ%3D%3D&cookie15=URm48syIIVrSKA%3D%3D&cookie21=WqG3DMC9Fb5mPLIQo9kR&lng=zh_CN&existShop=false&pas=0; uc3=nk2=rUtEsEAPxFiBAw%3D%3D&vt3=F8dBxd9vfOFX6TF0nIU%3D&lg2=UtASsssmOIJ0bQ%3D%3D&id2=UU20sOBlt5YjsA%3D%3D; tracknick=%5Cu6211%5Cu624B%5Cu673A%5Cu9762%5Cu5305; lid=%E6%88%91%E6%89%8B%E6%9C%BA%E9%9D%A2%E5%8C%85; _l_g_=Ug%3D%3D; uc4=nk4=0%40r7rCJKnwPLZ3%2FwyNCMllICP5es7j&id4=0%40U2%2Fz9fRgFErUiIbdThLAqnTeryYw; unb=2565225077; lgc=%5Cu6211%5Cu624B%5Cu673A%5Cu9762%5Cu5305; cookie1=VyVfQs3fk3Q1AMa82%2BACjr%2B92r264TDI3Q1c5WQuXXw%3D; login=true; cookie17=UU20sOBlt5YjsA%3D%3D; cookie2=1cf0a583503c0e1120b70f4ef312f5c5; _nk_=%5Cu6211%5Cu624B%5Cu673A%5Cu9762%5Cu5305; sgcookie=EilyrHs60A8pXOSQMCPEY; sg=%E5%8C%857f; t=0f46f0f89d1ad6a09a42a2e03e34c8ad; csg=af40d9de; _tb_token_=7e358e863e33f; enc=m7O0wanabkvr3U2e%2B%2FVwjIRhdoivog54aY5f614N4hBpuXKXuZzuCOP8Wqjk%2FohRVNzechJXzRihNyJDnIQHxw%3D%3D; l=dBOQ8BwlQB9FA9pWBOfwVsUBXgbOgIOb8sPzcQtKtICPOq1wBiJPWZ43uHTeCnGVh6JwR3laeFr4BMsXcnV0x6aNa6Fy_1Dmn; isg=BKOjn8dx-fVsPLXByTRwZsHRMuFNmDfaBnKiX9UB34JaFMI2XWiVKt1CDuQatI_S'}#尝试获取数据(这里的数据应该是从json里面获取的)

try:

data= requests.get(url,headers =headers).text

time.sleep(10)

result= re.findall('rateContent":"(.*?)"fromMall"',data)

data_list.extend(result)except:print("本页爬取失败")

df=pd.DataFrame()

df["评论"] =data_list

df.to_excel("评论_汇总.xlsx")

由于天猫会有比较强的反爬机制,因此需要设置睡眠时间,链接也要更新。

以上就是爬取的部分评价,可以通过可视化工具提取关键词并绘制出词云。

3 词云图的制作

首先将原来的数据保存为csv的格式

#df = pd.DataFrame()#df["review"] = data_list#df.to_excel("评论_汇总.xlsx")

df =pd.DataFrame()

df["review"] =data_list

df.to_csv("coms.csv",mode="a+",header=None,index=None,encoding="utf-8")

之后利用这些数据进行词云的绘制

#@功能:读取csv文件,然后进行绘制词云图#@日期:2020-04-22

importrefrom wordcloud importWordCloudimportmatplotlib.pyplot as pltimportpandas as pdimportjiebaimportnpfrom PIL importImage#读取原始数据

raw_comments = pd.read_csv('com.csv');raw_comments.head()#导入停用词表,这里的stopword是可以自己更改上传的

with open('stopword.txt') as s:

stopwords= set([line.replace('\n', ' ') for line ins])#传入apply的预处理函数,完成中文提取、分词以及多余空格剔除

defpreprocessing(c):

c= [word for word in jieba.cut(' '.join(re.findall('[\u4e00-\u9fa5]+', c))) if word != ' ' and word not instopwords]return ' '.join(c)#将所有语料按空格拼接为一整段文字

comments = ' '.join(raw_comments['评论'].apply(preprocessing));comments[:500]#---------生产词云----------

usa_mask = np.array(Image.open('flower.png'))#image_colors = ImageColorGenerator(usa_mask) #读取图片本身颜色,但是这一句有错误#从文本中生成词云图

wordcloud = WordCloud(background_color='white', #背景色为白色

height=400, #高度设置为400

width=800, #宽度设置为800

scale=1, #长宽拉伸程度设置为20

prefer_horizontal=0.2, #调整水平显示倾向程度为0.2

max_words=500, #设置最大显示字数为500

relative_scaling=0.3, #设置字体大小与词频的关联程度为0.3

max_font_size=50,#缩小最大字体为50

font_path='msyh.ttf',#设置字体为微软雅黑

mask=usa_mask#添加蒙版

).generate_from_text(comments)

plt.figure(figsize=[8, 4])

plt.imshow(wordcloud#.recolor(color_func=image_colors),alpha=1

)

plt.axis('off')#保存到本地

plt.savefig('图6.jpg', dpi=600, bbox_inches='tight', quality=95)

plt.show()

最后生产的图片:

(猜猜这个图片像什么)

如果你处于想学Python或者正在学习Python,Python的教程不少了吧,但是是最新的吗?说不定你学了可能是两年前人家就学过的内容,在这小编分享一波2020最新的Python教程。获取方式,私信小编 “ 资料 ”,即可免费获取哦!

python爬淘宝评论_python爬虫实例,一小时上手爬取淘宝评论(附代码)相关推荐

  1. python爬取大众点评数据_python爬虫实例详细介绍之爬取大众点评的数据

    python 爬虫实例详细介绍之爬取大众点评的数据 一. Python作为一种语法简洁.面向对象的解释性语言,其便捷性.容易上手性受到众多程序员的青睐,基于python的包也越来越多,使得python ...

  2. python 随机森林调参_Python机器学习实践:随机森林算法训练及调参-附代码

    原标题:Python机器学习实践:随机森林算法训练及调参-附代码 文章发布于公号[数智物语] (ID:decision_engine),关注公号不错过每一篇干货. 来源 | 博客园 作者 | 战争热诚 ...

  3. python爬b站评论_Python爬虫入门教程 32-100 B站博人传评论数据抓取 scrapy

    1. B站博人传评论数据爬取简介 今天想了半天不知道抓啥,去B站看跳舞的小姐姐,忽然看到了评论,那就抓取一下B站的评论数据,视频动画那么多,也不知道抓取哪个,选了一个博人传跟火影相关的,抓取看看.网址 ...

  4. Python爬虫:Xpath爬取网页信息(附代码)

    Python爬虫:Xpath爬取网页信息(附代码) 上一次分享了使用Python简单爬取网页信息的方法.但是仅仅对于单一网页的信息爬取一般无法满足我们的数据需求.对于一般的数据需求,我们通常需要从一个 ...

  5. Python带进度条的小说爬虫(笔趣网爬小说—简约版)

    Python带进度条的小说爬虫(笔趣网爬小说-简约版) 准备: BeautifulSoup.selenium.PhantomJS 注意PhantomJS安装方式 这里附上安装方式连接: https:/ ...

  6. python获取实时基金数据由银河证券提供_我用Python写了个金融数据爬虫,半小时干了组里实习生一周的工作量...

    原标题:我用Python写了个金融数据爬虫,半小时干了组里实习生一周的工作量 最近,越来越多的研究员.基金经理甚至财务会计领域的朋友,向小编咨询:金融人需要学Python么? 事实上在2019年,这已 ...

  7. python 爬虫实例-python爬虫实例,一小时上手爬取淘宝评论(附代码)

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 1 明确目的 通过访问天猫的网站,先搜索对应的商品,然后爬取它的评论数据. ...

  8. Python爬虫实例,一小时上手爬取淘宝评论(附代码)!

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 1 明确目的 通过访问天猫的网站,先搜索对应的商品,然后爬取它的评论数据. ...

  9. python爬虫实例,一小时上手爬取淘宝评论(附代码)

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 1 明确目的 通过访问天猫的网站,先搜索对应的商品,然后爬取它的评论数据. ...

  10. python爬虫淘宝登录_python爬虫实现模拟淘宝登录

    就算所有人都不支持你.这条路会很曲折,你也会一度认为是不是自己选错了,但只要坚持,就算最后没有成功,但努力了就不会有遗憾. python爬虫模拟淘宝登录 小贴士 这个爬虫和搜索引擎的爬虫是有区别的.搜 ...

最新文章

  1. Mysql高级之触发器
  2. 十类最让前辈讨厌的新人
  3. setInterval动态时间处理
  4. CreateThread函数
  5. 作者:司恩哲(1985-),男,现就职于中国人民银行征信中心数据部,主要研究方向为数据挖掘。...
  6. 搭建亿级时间线数据的监控系统,我有绝招!
  7. UE4 编译虚幻引擎
  8. 如何成为一名合格的CRUD工程师?
  9. cesium obj格式转换为gltf、glb
  10. 为什么最多只有正20面体证明过程
  11. win10系统禁用音频服务器,Win10下怎样设置禁用扬声器、插入耳机有声音【图文教程】...
  12. win7找回快速启动栏
  13. 电脑突然找不到wifi 的解决方法
  14. Codeforces869E The Untended Antiquity
  15. micropython esp8266教程_ESP8266 Micropython – 连接大学Wi-Fi(WPA2 Enterprise PEAP)
  16. 苹果主题商店_苹果tf签名上架需要使用什么材料?
  17. 移植u-boot到S3C2440之从内存启动
  18. “爆打”团队阿尔法发布 以及 第四周任务
  19. CLIP论文阅读、zero-shot实验、linear prob实验记录
  20. tesseract4.1遇到奇怪的0xc000001d应用程序无法运行

热门文章

  1. coreldrawx4缩略图显示不出来_CorelDRAW缩略图不显示解决办法
  2. 华为手机所有图标变黑_华为手机字体白色变黑色 华为图标字体怎么变黑
  3. 录屏软件推荐--绝对良心--中国人不骗中国人
  4. C++初学必练基础题【第四期】
  5. Java基础编程题:倒序输出九九乘法表
  6. GBASE数据库安装手册中的一点命令
  7. (2019.12.21已解决)pdf有密码如何打印
  8. PWA 应用列表及常用工具
  9. maven添加ojdbc6
  10. APP自动化效果测试工具