做自己喜欢的爬虫:steam白玩

闲的无聊做了一期steam白嫖的文章。
有了它,以后就再也不会担心游戏没有白玩到了。
steam近期免费:https://steamdb.info/upcoming/free/
特地做出来个exe可执行文件给大家用,免得电脑没有python的人眼馋。

很多人学习python,不知道从何学起。
很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手。
很多已经做案例的人,却不知道如何去学习更加高深的知识。
那么针对这三类人,我给大家提供一个好的学习平台,免费领取视频教程,电子书籍,以及课程的源代码!
QQ群:961562169


话不多说,直接上代码:

import csv
import sys
import requests
from lxml import etree
from threading import Thread
from tkinter import messagebox
import pandas as pd
headers = {"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.163 Safari/537.36"}def login(url="https://steamdb.info/upcoming/free/"):try:html = requests.get(url,headers = headers)if html.status_code == 200:text = html.textdom = etree.HTML(text)return domelse:passexcept:messagebox.showinfo("warning","warn Internet")sys.exit(0)
def now(dom):name = dom.xpath('//table[1]//a/b/text()')price = dom.xpath('//table[1]//td[4]/text()')start_time = dom.xpath('//table[1]//td[5]/@title')end_time = dom.xpath('//table[1]//td[6]/@title')for a,b,c,d in zip(name,price,start_time,end_time):name,price,start,end = replace(a,b,c,d)write_csv(name,price,start,end,"now.csv")
def furture(dom):name = dom.xpath('//table[2]//a/b/text()')price = dom.xpath('//table[2]//td[3]/text()')start_time = dom.xpath('//table[2]//td[4]/@title')end_time = dom.xpath('//table[2]//td[5]/@title')for a,b,c,d in zip(name,price,start_time,end_time):name,price,start,end = replace(a,b,c,d)write_csv(name,price,start,end,"furture.csv")
def replace(name,price,start,end):start = start.split("+")[0]end = end.split("+")[0]if price != "Weekend":name = name.split("Limited")[0]price = "Free"else:name = name.split("Free")[0]return name,price,start,end
def write_csv(name,price,start,end,csv_name):with open(csv_name,"a",newline="") as f:csv_writer = csv.writer(f)csv_writer.writerow([name,price,start,end])print(name,price,start,end)
def read_csv(csv_name):url = "https://store.steampowered.com/search/?term="csv_data = pd.read_csv(csv_name,header = None,encoding = "utf-8")names = csv_data[0]start_times = csv_data[2]end_times = csv_data[3]count = 1for name,start_time,end_time in zip(names,start_times,end_times):name = name[:-1]new_name = "+".join(name.split())dom = login(url+new_name)store_name = dom.xpath('//*[@id="search_resultsRows"]/a[1]/div[2]/div[1]/span/text()')[0]if name == store_name:count += 1store = dom.xpath('//*[@id="search_resultsRows"]/a[1]/@href')[0]start_time = "日".join("月".join(start_time.split("-")[1:]).split("T"))end_time = "日".join("月".join(end_time.split("-")[1:]).split("T"))write_txt("【"+name+"】\t领取时间为:{}-{}\n".format(start_time,end_time))write_txt("领取地址为:{}\n".format(store))write_txt("{}\n".format("-"*80))print("写入{}次".format(count-1))else:count += 1write_txt("第{}项出错,请去csv内部检测\n".format(count-1))write_txt("游戏名字为:{}".format(name))write_txt("{}\n".format("-"*80))
def write_txt(text):with open("steam.txt","a") as f:f.write(text)
def run_write(csv_name):read_csv(csv_name)write_txt("-"*40,"这里是分割线","-"*40)
if __name__ == "__main__":threads = []dom = login()threads.append(Thread(target=now,args=(dom,)))threads.append(Thread(target=furture,args=(dom,)))for thread in threads:thread.start()thread.join()run_write("now.csv")run_write("furture.csv")

利用Python白玩steam游戏,我是专业的相关推荐

  1. 如何用python开发一个贪吃蛇游戏_教你一步步利用python实现贪吃蛇游戏

    教你一步步利用python实现贪吃蛇游戏 来源:中文源码网    浏览: 次    日期:2019年11月5日 [下载文档:  教你一步步利用python实现贪吃蛇游戏.txt ] (友情提示:右键点 ...

  2. python拼图_利用python制作拼图小游戏的全过程

    开发工具 Python版本:3.6.4 相关模块: pygame模块: 以及一些Python自带的模块 关注公众号:Python学习指南,回复"拼图"即可获取源码 环境搭建 安装P ...

  3. 云计算机能不能玩游戏,云电脑有哪些?可不可以拿来玩steam游戏?

    COD16作为使命召唤最新作品在Steam平台上更新了全新的游戏引擎,作为一款比较热门的FPS游戏,一直广受玩家喜欢.不过COD16新引擎对配置的要求有所提升,而云电脑又能帮助我们软升级电脑,那么云电 ...

  4. 利用python实现简易地雷游戏

    利用python实现一次性地雷游戏 #地雷游戏(地雷图中"T"表示此处没有地雷,"F"表示此处为地雷,"N"表示此处未知) import n ...

  5. 利用python制作拼图_利用python制作拼图小游戏的全过程

    开发工具 Python版本:3.6.4 相关模块: pygame模块: 以及一些Python自带的模块 关注公众号:Python学习指南,回复"拼图"即可获取源码 环境搭建 安装P ...

  6. psv浏览器支持html吗,PS VR终于支持Steam平台 PS VR能够连接PC玩Steam游戏了-VR之家

    VR之家消息:近日,PS VR已经可以依靠第三方插件Trinus PSVR来玩Steam上的VR游戏了!据悉,只需一个USB3.0端口以及安装好驱动并进行简单的设置,然后就可以直接用PS VR连接St ...

  7. python概率游戏_来自G胖的微笑:使用python监督学习预测Steam游戏打折的概率

    本期文章分为两期,第一篇我们先解决是否Steam平台的游戏会不会打折?下一期我们会详细分析影响Steam的打折因素 基本目标 使用有监督的机器学习分类模型来确定某款Steam游戏是否可以在正常一周内( ...

  8. 利用Python来玩扫雷,极致的思维体验

    529. 扫雷游戏 题目来源:力扣(LeetCode) https://leetcode-cn.com/problems/minesweeper 题目 让我们一起来玩扫雷游戏! 很多人学习python ...

  9. linux系统可以下steam吗,如何在Linux系统上玩Windows游戏?linux玩Steam游戏方法

    大部分的游戏都只有Windows版本,这对使用Linux和IOS的朋友来说还是比较郁闷的,谁让windows是操作系统中的老大呢?我们想要在Linux下玩windows游戏,一般来说就需要安装wind ...

  10. 白嫖steam游戏,我是专业的

    做自己喜欢的爬虫:steam白嫖 闲的无聊做了一期steam白嫖的文章. 有了它,以后就再也不会担心游戏没有白嫖到了. steam近期免费:https://steamdb.info/upcoming/ ...

最新文章

  1. 谈谈 Swift 中的 map 和 flatMap
  2. java udp分别用DatagramSocket和DatagramChannel实现多计算机接收广播数据
  3. 360极速浏览器无法正确getHours
  4. java当数值超过byte时_java试题及答案
  5. 10G_Ethernet_03 Example Design
  6. XML的四种解析器原理及性能比较
  7. mapper扫描问题(Invalid bound statement (not found))
  8. 【LOJ6038】【雅礼集训 2017 Day5】远行(LCT,树的直径)
  9. Pytorch grid_sample解析
  10. hau 3037 Saving Beans【Lucas定理】
  11. 网络实用技术--登录--第三方登录--百度第三方登录
  12. windows设备管理器_如何打开Windows设备管理器?
  13. python从txt导入数据到CSV文件末尾行丢失
  14. 【JSP】用户信息界面操作 ---- 用户信息修改
  15. 8.1 幽灵(no.21-no.30)
  16. python自动化表格处理软件_Python自动化处理Excel报表,我的工作更轻松了!
  17. python中not的用法
  18. 3分钟教你学会速卖通开店!干货来了!!!
  19. vercel部署hexo主题显示黑色空白
  20. python DHT网络爬虫

热门文章

  1. GitHub中文排行榜,帮助你发现高分优秀中文项目
  2. css中单选按钮怎么写,CSS 单选按钮
  3. DIY-希捷硬盘固件问题的解决方法
  4. HTML 计算机代码
  5. Windows/Mac上免费好用的压缩软件推荐(持续更新)
  6. 景区分时实名预约系统
  7. 足球机器人比赛3V3
  8. IEEE1588v2解析(1)--同步的概念
  9. 空洞卷积详解(输入输出大小分析)
  10. SAP HANA - 企业管理软件数据库表结构完整文档