Python爬取京东笔记本电脑,来看看那个牌子最棒!

本文介绍了如何使用Python的urllib模块爬取京东笔记本电脑的价格、评论数等信息,通过分析和可视化,揭示各品牌销量情况,为购买提供参考。重点讲解了抓取网页ID、解析JS包获取数据以及数据可视化的过程。
摘要由CSDN通过智能技术生成

一、前言

 

二、知识要求三、过程分析1.观察主页面和每个电脑界面的网址2.寻找每个电脑的id3.找到存放电脑的价格和评论数的信息4.爬取信息的思路四、urllib模块爬取京东笔记本电脑的数据、并对其做一个可视化实战五、可视化结果1.运行结果2.可视化结果

Python资源共享群:626017123

 

一、前言

作为一个程序员,笔记本电脑是必不可少的,我这里对京东上的前2页的笔记本的好评论数,价格,店铺等信息进行爬取,并做一个可视化,根据可视化的图,大家可以清晰的做出预测,方便大家购买划算的电脑。当然,我这里前2页的数据是远远不够的,如果大家想要预测的更精准一些,可以改一下数字,获取更多页面的数据,这样,预测结果会更精确。

二、知识要求

  • 掌握python基础语法
  • 异常处理
  • 熟悉urllib模块或者其他爬虫模块
  • 会抓包分析

三、过程分析

1.观察主页面和每个电脑界面的网址

 

 

 

 

 

 

 

(1)观察具体界面的网址,我们可以猜测,具体每个界面都有一个id,通过构造网址https://item.jd.com/【id】.html,就可以得到具体每个界面的网址。

(2)观察主界面的网址,我们发现page=的属性值就是具体的页码数,通过构造page的值,我们可以实现自动翻页爬取信息。对主界面网址一些不必要的信息剔除,最后得到主界面翻页的网址规律https://list.jd.com/list.html?cat=670,671,672&page=【页码数】

同过以上的分析,我们可以看见,获取信息的关键就是每个电脑的具体id代号,接下来,我们的任务就是要找到每个电脑的id。

2.寻找每个电脑的id

(1)首先,看看网页源代码中是否会有每个电脑的id

 

 

 

 

 

 

 

 

 

 

 

 

 

 

我们再进入到刚刚搜索的哪个电脑名称的具体界面,发现,确实是他的id

 

 

 

 

 

 

 

(3)根据id附件的一些属性值,唯一确定所有电脑id

根据class="gl-i-wrap j-sku-item"属性值定位,发现,唯一确定60个id,数了一下界面上的电脑,一页确实是60个电脑,所以,电脑的id获取到了。

 

 

 

 

 

 

 

(4)同理,根据<div class="p-name">属性值获取具体每个电脑的网址和电脑名,这样我们连具体每个电脑的网址都不用构造了,直接可以获取。

3.找到存放电脑的价格和评论数的信息

(1)通过到网页源代码中去找,发现完全找不到,所以,我猜测这些信息隐藏在js包中。

(2)打开fiddler抓包工具,进行抓包分析。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

可以看见,这些信息确实是在js包里面,复制该js包的网址,然后分析。

(3)分析有如下结论:

 

 

 

 

 

 

 

这里,我也抓到了存放店铺的js包,但是,这个js包的地址每次有一部分是随机生成的,所以,获取不到每台的电脑的店铺名。但是,我有每台电脑的具体网址,而该界面里面有该电脑的店铺,所以,我可以访问每台电脑的具体界面去获取到店铺消息。

4.爬取信息的思路

(1)先爬每页的信息

(2)再爬每页中每台电脑的价格、电脑名和评论数,以及每台电脑的网址

(3)爬取每台电脑的页面,获取店铺信息

(4)获取完所有页面信息后,做一个可视化

四、urllib模块爬取京东笔记本电脑的数据、并对其做一个可视化实战

爬虫文件:(建议大家边看边敲一遍,更加有利于学习)

 1# -*- cod
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值