山东大学暑期实训-饮食健康管理系统设计与实现(九)

山东大学暑期实训-饮食健康管理系统设计与实现(九)

关于用户信息的爬虫

爬虫分析

应项目经理的要求,爬取用户信息,具体包括用户昵称、用户头像、用户性别、用户注册时间。接下来分析我们要做的工作。

爬取目标

爬取的目标网站依然是美食天下网。
我们这次主要关注的目标是用户的个人主页。
该用户为例
在这里插入图片描述
我们需要用户的昵称、用户的头像、用户的性别、用户注册的时间。

爬取流程

我们依旧是在scrapy框架的基础上进行爬取。首先读取给定的包含用户id和用户url的表,然后分别访问所有的网页,通过selenium捕捉到网页,传给scrapy引擎,最后提取数据并保存下来。

网页分析

首先是用户昵称
在这里插入图片描述
观察它在DOM中的结构。
在这里插入图片描述
它的xpath路径为:

//div[@class="subname"]//em/a/text()

然后是用户头像,头像是动态加载出来的,我们使用selenium来等待头像加载完成后在返回页面内容,然后首先获取头像的url,接着继承scrapy的ImagesPipeline来根据头像的url获取头像并保存在本地。
在这里插入图片描述
观察头像在DOM中的结构:
在这里插入图片描述
它的xpath路径为:

//div[@class="pic"]//img/@src

接着,是用户的性别,在美食天下网站中,用户的性别是通过图片的形式展现的。

在这里插入图片描述
它在DOM中的结构为
在这里插入图片描述
观察后发现,在标签对应的class属性中,会有man 或者woman 代表用户的性别,我们呢要做的就是获取这个属性,做一次判别。
对应的xpath地址为:

//div[@class="subname"]/i[1]/@class

最后就是用户的注册时间:
在这里插入图片描述
它的位置为:
在这里插入图片描述
xpath为:

//i[@class="messagenum"]/text()
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值