【爬虫实战】使用Python获取花粉俱乐部中Mate60系列的用户发帖数据

news2024/11/27 0:43:47

🤵‍♂️ 个人主页:@艾派森的个人主页

✍🏻作者简介:Python学习者
🐋 希望大家多多支持,我们一起进步!😄
如果文章对你有帮助的话,
欢迎评论 💬点赞👍🏻 收藏 📂加关注+


目录

一、Python编写爬虫的优势

二、实验过程

2.1明确目标

2.2抓包分析

2.3代码编写

三、总结

文末推荐


一、Python编写爬虫的优势

  1. 易学易用:Python的语法简单明了,易于理解和学习,使得编写爬虫变得简单容易。
  2. 强大的第三方库:Python有很多强大的第三方库,如requests、BeautifulSoup、Scrapy、Selenium等,可以帮助我们轻松实现网页的请求、解析和数据的提取等功能。
  3. 跨平台性:Python可运行于Windows、Linux、macOS等多个操作系统上,使得在多个平台上编写和运行爬虫变得简单容易。
  4. 处理文本信息方便:Python对文本处理非常方便,支持多种文本编码,可以轻松实现数据的清洗和去重。
  5. 丰富的数据处理和分析工具:Python拥有众多的数据处理和分析工具,如NumPy、Pandas、Matplotlib等,可以对爬取的数据进行深入的分析和处理。
  6. 自动化:Python可以轻松实现自动化,可以自动执行爬取任务,定时发送邮件等,大大提高工作效率。
  7. 反爬虫机制容易应对:Python可以通过设置User-Agent、Cookie等方式来模拟浏览器行为,避免被目标网站的反爬虫机制识别和封锁。

二、实验过程

2.1明确目标

本次实验我们的任务是获取华为社区(花粉俱乐部)中Mate60手机社区中的用户发帖数据

首先点击链接进入花粉俱乐部并找到Mete60系列https://cn.club.vmall.com/mhw/consumer/cn/community/mhwnews/allcirclehome/

进入之后我们可以看到里面有很多用户的发帖数据,我们先获取热门下面的帖子数据

2.2抓包分析

在明确了目标之后,我们将需要对网页的页面结构进行分析,找出目标数据的来源接口,然后模拟客户端想服务端发送请求即可。

①打开开发者工具(按F12或鼠标右键) ②刷新页面并复制一小段评论内容 ③点击搜索框 ④将复制的内容粘贴进行并确定⑤点击出现的第一个接口 ⑥在名称列表找到该接口(有灰色背景阴影的) ⑦点击预览然后一直点击小三角展开,你就会发现我们要找到数据来源就是这个接口,并且该接口返回的是json格式的数据

接着分析该接口需要的参数,经过简单的测试分析后,我们会发现pageindex参数控制的是页码数,一页有20条数据

2.3代码编写

前面我们已经分析了数据的来源接口以及参数,接着就需要编写代码。

首先我们右键点击接口-复制-以cURL(bash)格式复制

  复制好后,我们借助一个接口解析工具,Convert curl commands to code 

将复制的内容粘贴进对话框内

然后往下滑,点击Copy to clipboard,就是复制它已经解析好的代码

 然后直接粘贴进你的py代码中

它已经帮我们把请求发生代码写好了,我们只需要对返回的数据进行解析即可。响应的数据是json格式,直接使用字典的取值方法即可。其中字段缺失的数据我们定义为Nan空,并将时间戳数据转化为时间类型,这里我们获取了用户名,用户ID,发帖时间,发帖内容,粉丝数,点赞数,评论数,阅读量等字段数据。

数据存储的话我们使用csv文件进行写入,最后再转化为excel文件

当检测到返回的数据为空时,也就是达到了网站爬取的最大上限时,我们停止爬取并保存文件。 

运行结果如下:

三、总结

        本次实验我们使用python爬虫获取了花粉俱乐部中Mate60系列的用户发帖数据,并保存在本地,后续便可进行各样的分析与研究。感兴趣的小伙伴可以关注文末公众号并加入粉丝群领取完整代码或交流讨论。

文末推荐

资料获取,更多粉丝福利,关注下方公众号获取

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1530747.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

重装系统后鼠标识别不了咋办

不知道大家在重装系统时,有没有遇到过系统重装完成后,鼠标不能使用的情况。在这种情况下,我们要怎么操作电脑解决这个问题呢?今天就跟大家分享重装系统后鼠标识别不了咋办。 一、主板没有设置兼容usb 在重装系统时,如果主板没有设置兼容usb,就会出现鼠标使用不了的现象。…

C++基础之友元(十)

由于C类的封装性,所以类的私有成员只能在类的内部访问,类之外是不能访问他们的。但是如果将其他类设置为类的友元(friend),那么其他类也可以访问该类的私有成员。如果把类比作是一个家庭的话,那么private就…

安防监控平台EasyCVR使用管理员权限登录后,平台菜单栏显示不全是什么原因?

安防视频监控系统EasyCVR视频综合管理平台,采用了开放式的网络结构,平台能在复杂的网络环境中(专网、局域网、广域网、VPN、公网等)将前端海量的设备进行统一集中接入与视频汇聚管理,平台支持设备通过4G、5G、WIFI、有…

国创证券|中国资产,突传重大利好!外资最新动作曝光!

外资正在从头定价我国财物。 据彭博社最新报导,全球基金正在活跃购入我国股票,已接连第2个月净买入我国股票。其间,挪威的Skagen AS以及美国的Boston Partners两家全球基金近几个月来大举增持了A股、港股相关股票,增持的理由是&a…

最新Java面试题3【2024初级】

下载链接:博主已将以上这些面试题整理成了一个面试手册,是PDF版的 互联网大厂面试题 1:阿里巴巴Java面试题 2:阿里云Java面试题-实习生岗 3:腾讯Java面试题-高级 4:字节跳动Java面试题 5:字…

Markdown 最全语法指南 —— 看这一篇就够了

目录 一. 前言 二. Markdown 标题语法 三. Markdown 段落语法 四. Markdown 换行语法 五. Markdown 强调语法 六. Markdown 引用语法 七. Markdown 列表语法 八. Markdown 代码语法 九. Markdown 分隔线语法 十. Markdown 链接语法 十一. Markdown 图片语法 十二. Markdown 转义…

10 个最佳免费水印去除工具,可去除照片中的任何水印

水印可以保护您的照片,但时不时地,您需要一个应用程序来删除它们。有很多免费的水印去除应用程序可以帮助您做到这一点,其中包括奇客水印管家,它还有更多功能可供探索。继续阅读以发现 10 个最佳免费水印去除剂以及如何从照片中去…

C++第八弹---类与对象(五)

✨个人主页: 熬夜学编程的小林 💗系列专栏: 【C语言详解】 【数据结构详解】【C详解】 目录 1、运算符重载 1.1、赋值运算符重载 1.2、前置和后置重载 2、const成员 3、取地址及const取地址操作符重载 总结 1、运算符重载 1.1、赋值运…

opencv 傅里叶变换(低通滤波 + 高通滤波)

文章目录 1、傅里叶变换2、通过numpy实现3、高通滤波器5、通过opencv实现傅里叶变换6、低通滤波器7、C实现傅里叶变换 1、傅里叶变换 时域分析:以时间作为参照物,世间万物都是随着时间变化而变化,并且不会停止 频域分析:认为世间万…

ChatGPT论文指南|分享13个学术论文写作ChatGPT口诀!【建议收藏】

点击下方▼▼▼▼链接直达AIPaperPass ! AIPaperPass - AI论文写作指导平台 公众号原文▼▼▼▼: ChatGPT论文指南|分享13个学术论文写作ChatGPT口诀!【建议收藏】 目录 1.段落转折 2.前言写作 3.具体论点 4.书籍介绍 AIPaperPass智…

day14-SpringBoot 原理篇

一、配置优先级 SpringBoot 中支持三种格式的配置文件: 注意事项 虽然 springboot 支持多种格式配置文件,但是在项目开发时,推荐统一使用一种格式的配置 (yml 是主流)。 配置文件优先级排名(从高到低&…

并发编程之synchronized的详细解析

4.2 synchronized 解决方案 应用之互斥 为了避免临界区的竞态条件发生,有多种手段可以达到目的。 阻塞式的解决方案:synchronized,Lock 非阻塞式的解决方案:原子变量 本次课使用阻塞式的解决方案:synchronized&am…

可视化设计:一文读懂桑基图,从来处来,到去出去。

一、什么是桑基图 桑基图(Sankey diagram)是一种图表类型,用于可视化流量、能量、资源或数量的流动。它通过使用有向箭头连接不同的节点来显示流动的路径和量级。 桑基图常用于可持续能源、物流、人口流动、资源分配等领域的数据可视化。它…

体积小,成本低,性能好单片式集成稳压器件——D7805

D7805 构成的 5V 稳压电源为输出电压5V,输出电流 1000mA 的稳压电源它由滤波电容 C1,C3,防止自激电容 C2、C3 和一只固定三端稳压器(7805)后级加 LC 滤波极为简洁方便地搭成,输入直流电压范围为 7~35V,此直流电压经过D…

ETH网络 之 Gas

Gas(燃料) 我们可以把 ETH 网络 想象成一辆汽车,如果想运行的化就需要燃料(Gas) Gas Fee Gas Fee是用于执行某些操作的Gas数量 * 每单位Gas的成本 Gas Fee必须用以太坊的本币支付,即以太币 (ETH) Gas通常以…

unity学习(63)——预制体

1.运行发现预制体初始化的时候存在问题 这里有许多技巧,需要细看。 2.预制体在MapHandler.cs的定义如下 3.把MapHandler绑到相机上,在相机的属性栏中找到赋值部分。 4.size设置成2,然后把模型拖拽到1号索引位置上 5.运行之后预制体确实成功实…

机器学习 - 准备数据

“Data” in machine learning can be almost anything you can imagine. A table of big Excel spreadsheet, images, videos, audio files, text and more. 机器学习其实可以分为两部分 将不管是什么data,都转成numbers.挑选或者建立一个模型来学习这些numbers …

移远通信,开启透明天线中的“创新密码”

近日,全球领先的物联网整体解决方案供应商移远通信正式对外宣布,其以远远领先行业的速度推出前沿技术成果——5G透明天线。该天线主体选用透明薄膜材质,具有性能优、重量轻、尺寸灵活、透明度高、环境融合度好等优势,特别适用于智…

ideaSSM 工程车辆人员管理系统bootstrap开发mysql数据库web结构java编程计算机网页源码maven项目

一、源码特点 idea 开发 SSM 工程车辆人员管理系统是一套完善的信息管理系统,结合SSM框架和bootstrap完成本系统,对理解JSP java编程开发语言有帮助系统采用SSM框架(MVC模式开发),系统具 有完整的源代码和数据库&…

蓝桥杯练习03个人博客

个人博客 介绍 很多人都有自己的博客,在博客上面用自己的方式去书写文章,用来记录生活,分享技术等。下面是蓝桥云课的博客,但是上面还缺少一些样式,需要大家去完善。 准备 开始答题前,需要先打开本题的…