利用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实现监控linux性能及进程消耗性能的方法
Jul 25 Python
Python的设计模式编程入门指南
Apr 02 Python
详细介绍Python中的偏函数
Apr 27 Python
Python采用Django开发自己的博客系统
Sep 29 Python
Python读取和处理文件后缀为.sqlite的数据文件(实例讲解)
Jun 27 Python
浅析python协程相关概念
Jan 20 Python
python+mysql实现学生信息查询系统
Feb 21 Python
在Python中实现函数重载的示例代码
Dec 12 Python
Python pandas库中的isnull()详解
Dec 26 Python
Pytorch evaluation每次运行结果不同的解决
Jan 02 Python
Python网络爬虫四大选择器用法原理总结
Jun 01 Python
python如何实现图片压缩
Sep 11 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
生成php程序的php代码
2008/04/07 PHP
比较discuz和ecshop的截取字符串函数php版
2012/09/03 PHP
PHP设计模式之命令模式的深入解析
2013/06/13 PHP
PHP在网页中动态生成PDF文件详细教程
2014/07/05 PHP
PHP图片自动裁切应付不同尺寸的显示
2014/10/16 PHP
php实现网站顶踩功能的完整前端代码
2015/07/19 PHP
PHP如何搭建百度Ueditor富文本编辑器
2018/09/21 PHP
Javascript 篱式条件判断
2008/08/22 Javascript
jQuery 剧场版 你必须知道的javascript
2009/05/27 Javascript
javascript 简练的几个函数
2009/08/29 Javascript
Javascript执行效率全面总结
2013/11/04 Javascript
Javascript数组与字典用法分析
2014/12/13 Javascript
js实现按钮控制图片360度翻转特效的方法
2015/02/17 Javascript
js模拟淘宝网的多级选择菜单实现方法
2015/08/18 Javascript
jQuery实现鼠标经过时出现隐藏层文字链接的方法
2015/10/12 Javascript
javascript实现Email邮件显示与删除功能
2015/11/21 Javascript
详解vuelidate 对于vueJs2.0的验证解决方案
2017/03/09 Javascript
Vue.js 2.5新特性介绍(推荐)
2017/10/24 Javascript
node.js express框架实现文件上传与下载功能实例详解
2019/10/15 Javascript
Vue使用预渲染代替SSR的方法
2020/07/02 Javascript
vue.js 输入框输入值自动过滤特殊字符替换中问标点操作
2020/08/31 Javascript
Vue单页面应用中实现Markdown渲染
2021/02/14 Vue.js
使用cx_freeze把python打包exe示例
2014/01/24 Python
python+matplotlib演示电偶极子实例代码
2018/01/12 Python
对pandas中apply函数的用法详解
2018/04/10 Python
在keras中model.fit_generator()和model.fit()的区别说明
2020/06/17 Python
如何使用Pytorch搭建模型
2020/10/26 Python
CHARLES & KEITH澳大利亚官网:新加坡时尚品牌
2019/01/22 全球购物
澳大利亚手袋、珠宝和在线时尚精品店:The Way
2019/12/21 全球购物
西部世纪.net笔试题面试题
2014/04/03 面试题
领导干部培训感言
2014/01/23 职场文书
管理提升方案
2014/06/04 职场文书
十佳标兵事迹材料
2014/08/18 职场文书
新郎父亲婚礼致辞
2015/07/27 职场文书
用Java实现简单计算器功能
2021/07/21 Java/Android
Java工作中实用的代码优化技巧分享
2022/04/21 Java/Android