python scrapy 爬取steam游戏

本文介绍了如何使用Python的Scrapy框架爬取Steam游戏列表页和详情页的数据,包括游戏标题、价格、折扣、评论等信息。在解析评论时,由于网页结构复杂,需要通过分析网络请求获取评论API,并处理可能出现的数据缺失和异常情况。最终,数据被保存到MongoDB数据库中。
摘要由CSDN通过智能技术生成

目标网页:
游戏列表页
在这里插入图片描述
游戏详情页
在这里插入图片描述
游戏评论
在这里插入图片描述
目标数据:
列表页:游戏标题,游戏价格,折扣,评论总数,好评比例,游戏发布时间
详情页:游戏图片,游戏简介,游戏评论

首先创建一个scrapy项目
在这里插入图片描述
根据规律构造列表页的请求地址
在这里插入图片描述
在这里插入图片描述
分析标签,抓取数据
标题
标题↑,价格↓
价格
列表页解析函数
在这里插入图片描述
测试打印第一条数据
在这里插入图片描述

然后开始构建详情页请求(这里一定要加accept-language这个请求头,不然会返回英文页面)

在这里插入图片描述
详情页的解析函数
在这里插入图片描述
测试打印数据
在这里插入图片描述
接下来获取游戏评论
在这里插入图片描述
游戏评论没有和主页面一起加载,通过分析网络请求,发现了评论的请求地址
在这里插入图片描述
此地址需要传入参数,经过测试,至少需要这几个参数
在这里插入图片描述
里面的730为游戏id,可以通过正则从详情页地址中获取,后面两个参数设置为筛选中文评论

继续刚才的代码↓
在这里插入图片描述
发起评论页请求
在这里插入图片描述
回调到评论的解析函数

评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值