利用Python实时获取steam特惠游戏数据


Posted in Python onJune 25, 2022

前言

Steam是由美国电子游戏商Valve于2003年9月12日推出的数字发行平台,被认为是计算机游戏界最大的数码发行平台之一,Steam平台是全球最大的综合性数字发行平台之一。玩家可以在该平台购买、下载、讨论、上传和分享游戏和软件。

利用Python实时获取steam特惠游戏数据

而每周的steam会开启了一轮特惠,可以让游戏打折,而玩家就会购买心仪的游戏

利用Python实时获取steam特惠游戏数据

传说每次有大折扣,无数的玩家会去购买游戏,可以让G胖亏死

利用Python实时获取steam特惠游戏数据

不过,由于种种原因,我总会错过一些想玩的游戏的特惠价!!!

所以,我就在想,可不可以用Python收集steam所有每周特惠游戏的数据

代码部分

开发环境

Python 3.8

Pycharm

先导入本次所需的模块

import random
import time
import requests
import parsel
import csv

模块可以pycharm里直接安装,输入pip install XXX(模块名)就行

利用Python实时获取steam特惠游戏数据

请求数据

url = f'https://store.steampowered.com/contenthub/querypaginated/specials/TopSellers/render/?query=&start=1&count=15&cc=TW&l=schinese&v=4&tag='
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.0.0 Safari/537.36'
}
response = requests.get(url=url, headers=headers)

获取请求的数据

html_data = response.json()['results_html']
print(html_data)

这样网页源代码就获取到了

利用Python实时获取steam特惠游戏数据

解析数据

selector = parsel.Selector(html_data)
lis = selector.css('a.tab_item')
for li in lis:
    href = li.css('::attr(href)').get()
    title = li.css('.tab_item_name::text').get()
    tag_list = li.css('.tab_item_top_tags .top_tag::text').getall()
    tag = ''.join(tag_list)
    price = li.css('.discount_original_price::text').get()
    price_1 = li.css('.tab_item_discount .discount_final_price::text').get()
    discount = li.css('.tab_item_discount .discount_pct::text').get()
    print(title, tag, price, price_1, discount, href)

利用Python实时获取steam特惠游戏数据

保存数据

先把数据保存进字典里面

dit = {
    '游戏': title,
    '标签': tag,
    '原价': price,
    '售价': price_1,
    '折扣': discount,
    '详情页': href,
}
csv_writer.writerow(dit)

最后保存到csv里

f = open('游戏_1.csv', mode='a', encoding='utf-8', newline='')
csv_writer = csv.DictWriter(f, fieldnames=[
    '游戏',
    '标签',
    '原价',
    '售价',
    '折扣',
    '详情页',
])
csv_writer.writeheader()

最后结果

利用Python实时获取steam特惠游戏数据

到此这篇关于利用Python实时获取steam特惠游戏数据的文章就介绍到这了,更多相关Python获取steam游戏数据内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!


Tags in this post...

Python 相关文章推荐
PYTHON正则表达式 re模块使用说明
May 19 Python
python使用urlparse分析网址中域名的方法
Apr 15 Python
Python编程实现输入某年某月某日计算出这一天是该年第几天的方法
Apr 18 Python
一些Centos Python 生产环境的部署命令(推荐)
May 07 Python
python的concat等多种用法详解
Nov 28 Python
django admin.py 外键,反向查询的实例
Jul 26 Python
python内存监控工具memory_profiler和guppy的用法详解
Jul 29 Python
python实现倒计时小工具
Jul 29 Python
python 中值滤波,椒盐去噪,图片增强实例
Dec 18 Python
matlab中imadjust函数的作用及应用举例
Feb 27 Python
Python文件名匹配与文件复制的实现
Dec 11 Python
如何用Python和JS实现的Web SSH工具
Feb 23 Python
Python first-order-model实现让照片动起来
python热力图实现的完整实例
彻底弄懂Python中的回调函数(callback)
Jun 25 #Python
利用Python实现翻译HTML中的文本字符串
Jun 21 #Python
使用scrapy实现增量式爬取方式
Jun 21 #Python
python+opencv实现目标跟踪过程
Jun 21 #Python
使用opencv-python如何打开USB或者笔记本前置摄像头
You might like
phpmyadmin里面导入sql语句格式的大量数据的方法
2010/06/05 PHP
PHP 代码规范小结
2012/03/08 PHP
thinkphp5实现微信扫码支付
2019/12/23 PHP
sina的lightbox效果。
2007/01/09 Javascript
用jquery来定位
2007/02/20 Javascript
js escape,unescape解决中文乱码问题的方法
2010/05/26 Javascript
javascript中的void运算符语法及使用介绍
2013/03/10 Javascript
javascript ready和load事件的区别示例介绍
2013/08/30 Javascript
js中opener与parent的区别详细解析
2014/01/14 Javascript
JavaScript中的prototype和constructor简明总结
2014/04/05 Javascript
js获取元素的标签名实现方法
2016/10/08 Javascript
实例详解display:none与visible:hidden的区别
2017/03/30 Javascript
jQuery制作input提示内容(兼容IE8以上)
2017/07/05 jQuery
ES6学习之变量的两种命名方法示例
2017/07/18 Javascript
vue.js路由跳转详解
2017/08/28 Javascript
HTML5开发Kinect体感游戏的实例应用
2017/09/18 Javascript
vscode下vue项目中eslint的使用方法
2019/01/13 Javascript
监控Nodejs的性能实例代码
2019/07/02 NodeJs
小程序自定义模板实现吸顶功能
2020/01/08 Javascript
基于Python实现的扫雷游戏实例代码
2014/08/01 Python
详解Django中的过滤器
2015/07/16 Python
Python面向对象特殊成员
2017/04/24 Python
Python实现读取字符串按列分配后按行输出示例
2018/04/17 Python
在Windows中设置Python环境变量的实例讲解
2018/04/28 Python
Django Form and ModelForm的区别与使用
2019/12/06 Python
Python接口测试get请求过程详解
2020/02/28 Python
世界领先的以旅馆为主的在线预订平台:Hostelworld
2016/10/09 全球购物
如何执行一个shell程序
2012/11/23 面试题
门卫人员岗位职责
2013/12/24 职场文书
简单的项目建议书模板
2014/03/12 职场文书
公益广告语集锦
2014/03/13 职场文书
公司离职证明样本
2014/09/13 职场文书
入党介绍人考察意见
2015/06/01 职场文书
拔河比赛新闻稿
2015/07/17 职场文书
教你解决往mysql数据库中存入汉字报错的方法
2021/05/06 MySQL
深入理解margin塌陷和margin合并的解决方案
2021/06/26 HTML / CSS