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

编程知识 更新时间:2023-04-18 00:15:41

点击“简说Python”,选择“置顶/星标公众号”

福利干货,第一时间送达!

@图片自制by小si

一、前言

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

//

本文作者

王豪:行路难,多歧路,今安在,埋头苦改bug会有时,直到bug改完才吃饭。

//

阅读文本大概需要 5 分钟。

一、前言

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

二、知识要求

  • 会抓包分析

三、过程分析

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


(1)观察具体界面的网址,我们可以猜测,具体每个界面都有一个id,通过构造网址 https://item.jd/【id】.html,就可以得到具体每个界面的网址。
(2)观察主界面的网址,我们发现 page=的属性值就是具体的页码数,通过构造page的值,我们可以实现自动翻页爬取信息。对主界面网址一些不必要的信息剔除,最后得到主界面翻页的网址规律 https://list.jd/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包中。fiddler抓包工具,进行抓包分析。



可以看见,这些信息确实是在js包里面,复制该js包的网址,然后分析。
(3)分析有如下结论:

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

4.爬取信息的思路

(1)先爬每页的信息

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

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


  

五、可视化结果

1.运行结果

2.可视化结果

评论数条形统计图:


店铺扇形统计图:

可以看见联想的电脑买的最好。

如果你觉得文章还不错,请大家点赞分享下。你的肯定是我最大的鼓励和支持。

仔细阅读下面四篇文章,2小时快速掌握Python基础知识要点

完整Python基础知识要点


学Python | 聊赚钱

更多推荐

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

本文发布于:2023-04-14 05:33:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/3ab0afa1577991f7aa7fb31229f947c9.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:笔记本电脑   来看看   最棒   牌子   京东

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!

  • 74971文章数
  • 14阅读数
  • 0评论数