利用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 相关文章推荐
浅谈django model的get和filter方法的区别(必看篇)
May 23 Python
Python批量发送post请求的实现代码
May 05 Python
Python编程在flask中模拟进行Restful的CRUD操作
Dec 28 Python
PyQt5实现类似别踩白块游戏
Jan 24 Python
5款Python程序员高频使用开发工具推荐
Apr 10 Python
python 字典操作提取key,value的方法
Jun 26 Python
python @classmethod 的使用场合详解
Aug 23 Python
python爬虫之爬取百度音乐的实现方法
Aug 24 Python
使用pyecharts1.7进行简单的可视化大全
May 17 Python
带你学习Python如何实现回归树模型
Jul 16 Python
python异步的ASGI与Fast Api实现
Jul 16 Python
Anaconda配置各版本Pytorch的实现
Aug 07 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
Netbeans 8.2与PHP相关的新特性介绍
2016/10/08 PHP
PHP编程文件处理类SplFileObject和SplFileInfo用法实例分析
2017/07/22 PHP
js传值 判断
2006/10/26 Javascript
Javascript 面向对象 继承
2010/05/13 Javascript
五段实用的js高级技巧
2011/12/20 Javascript
js实现select下拉框菜单
2015/12/08 Javascript
jQuery拖动元素并对元素进行重新排序
2015/12/30 Javascript
Ajax分页插件Pagination从前台jQuery到后端java总结
2016/07/22 Javascript
手机移动端实现 jquery和HTML5 Canvas的幸运大奖盘特效
2016/12/06 Javascript
Vue.js使用v-show和v-if的注意事项
2016/12/13 Javascript
微信小程序 数组(增,删,改,查)等操作实例详解
2017/01/05 Javascript
Bootstrap table 定制提示语的加载过程
2017/02/20 Javascript
jQuery插件zTree实现获取当前选中节点在同级节点中序号的方法
2017/03/08 Javascript
js实现添加删除表格(两种方法)
2017/04/27 Javascript
js脚本编写简单刷票投票系统
2017/06/27 Javascript
Nodejs 和Session 原理及实战技巧小结
2017/08/25 NodeJs
JavaScript函数绑定用法实例分析
2017/11/14 Javascript
JS实现留言板功能[楼层效果展示]
2017/12/27 Javascript
jQuery动态添加元素无法触发绑定事件的解决方法分析
2018/01/02 jQuery
jquery实现联想词搜索框和搜索结果分页的示例
2018/10/10 jQuery
vue实现分环境打包步骤(给不同的环境配置相对应的打包命令)
2019/06/04 Javascript
Vue 实现从小到大的横向滑动效果详解
2019/10/16 Javascript
微信小程序实现录音功能
2019/11/22 Javascript
[54:54]Newbee vs Serenity 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
[45:16]完美世界DOTA2联赛PWL S3 Magma vs Phoenix 第一场 12.12
2020/12/16 DOTA
学习python (1)
2006/10/31 Python
Python写的创建文件夹自定义函数mkdir()
2014/08/25 Python
go语言计算两个时间的时间差方法
2015/03/13 Python
python如何代码集体右移
2020/07/20 Python
使用纯 CSS 创作一个脉动 loader效果的源码
2018/09/28 HTML / CSS
Tessabit美国:集世界奢侈品和设计师品牌的意大利精品买手店
2020/06/29 全球购物
社团招新策划书
2014/02/04 职场文书
2014客服代表实习自我鉴定
2014/09/18 职场文书
2015应届毕业生自荐信范文
2015/03/05 职场文书
Python还能这么玩之用Python做个小游戏的外挂
2021/06/04 Python
Sentry的安装、配置、使用教程(Sentry日志手机系统)
2022/07/23 Python