一日一技:用Python做游戏有多简单
我520的公众号图片发了以后,有很多同学问我这个游戏是怎么做的,难不难。我就用两篇文章来介绍一下,如果使用Python做游戏。
这个游戏是使用PyGame做的,贴图素材是从itch.io找的。我之前也没有用过PyGame,这次属于是现学现用,参考的教程是PyGame: A Primer on Game Programming in Python。
用PyGame做游戏非常简单,我们今天第一篇文章,让大家实现一个可以在地图上移动的小猪。
我520的公众号图片发了以后,有很多同学问我这个游戏是怎么做的,难不难。我就用两篇文章来介绍一下,如果使用Python做游戏。
这个游戏是使用PyGame做的,贴图素材是从itch.io找的。我之前也没有用过PyGame,这次属于是现学现用,参考的教程是PyGame: A Primer on Game Programming in Python。
用PyGame做游戏非常简单,我们今天第一篇文章,让大家实现一个可以在地图上移动的小猪。
相信很多做爬虫的同学都会爬电商网站,每天爬一次,然后监控商品是否降价。如果你只监控一个商品,那么是否降价这非常容易判断,但如果你要找到这个网站里面所有降价的商品,那就非常麻烦了。
如下图所示,是美国电商沃尔玛的全站商品数据:
每个商品每天都会爬一次,一共有61w+条数据。里面有N个商品降价了,现在需要把这些降价的商品找出来。
我们有时候需要把一些机密文件发给多个客户,为了避免客户泄露文件,会在机密文件中添加水印。每个客户收到的文件内容相同,但是水印都不相同。这样一来,如果资料泄露了,通过水印就知道是从谁手上泄露的。
今天,一个做市场的朋友找我咨询一个加水印的问题,如下图所示:
他有一个Excel文件,文件里面有10000个经销商的名字,他要把价目表PDF发给这些经销商,每个经销商收到的PDF文件上面的水印都是这个经销商自己的名字。
这个需求手动操作肯定要累死人。但是如果用Python来做,就非常简单。代码不超过30行。
我在多篇文章里面都说过,我非常喜欢使用Yaml格式来写配置文件。Yaml是一个对人非常友好的配置格式。
有时候,我们在开发环境、测试环境和线上环境会有多套不同的配置文件,如何在不修改代码的情况下方便的切换配置文件呢?我以前的文章讲过一种方法,使用环境变量来指定配置文件名。今天我们来介绍一个更先进的工具,专门用来高效加载配置文件。这就是Facebook开源的Hydra。
我们知道,协程本质上是单线程单进程,通过充分利用IO等待时间来实现高并发。在IO等待时间之外的代码,还是串行运行的。因此,如果协程非常多,多少每个协程内部的串行代码运行时间超过了IO请求的等待时间,那么它的并发就会有一个上限。
上周的文章《一日一知:国内爬虫开发人员的未来》发布以后,很多同学私信我表示对爬虫出海很有兴趣,希望我能详细介绍一下。因此,我准备用几篇文章来介绍爬虫出海的具体做法细节和注意事项。
今天我们的话题是,如何规避法律风险。
在多年写代码的过程中,我总结了不少常用的工具函数。这些工具函数有的能够实现快速重试网络请求,有的可以把任意格式的时间转成标准格式,还有的可以自动生成正则表达式。
开篇先抛出我的观点:希望各位做爬虫的同学,尽快,尽可能多地做海外的爬虫项目,爬海外的网站。这才是你们新的未来。
我最近两年时间,已经没有做过任何国内网站的爬虫了,根据这两年爬海外网站的一些经验,谈谈我的发现和想法。
不是程序员的同学,别忙着走。不要看到Github就觉得这篇文章跟你无关。无论你是不是程序员,这篇文章都能帮到你。