使用Redis作为消息队列实现生产消费与发布订阅
日常的工作中,经常会用到队列(Queue),在python中有原生的队列,但是由于原生的队列是存在于内存当中,当系统重启后队列里的消息就没有,且无法进行分步式,Redis中的List数据有四种原语,LPUSH,LPOP,RPUSH,RPOP,配合使用可以实现简单的生产消费模型。
日常的工作中,经常会用到队列(Queue),在python中有原生的队列,但是由于原生的队列是存在于内存当中,当系统重启后队列里的消息就没有,且无法进行分步式,Redis中的List数据有四种原语,LPUSH,LPOP,RPUSH,RPOP,配合使用可以实现简单的生产消费模型。
使用python也有一段时间了,最近比较关注自住房信息,虽说它更新的比较缓慢,但是平时也不怎么会特意的去它的网站上去看, 于是就想用python抓它的信息,如果有新的信息就给自己发个邮件,这样手机上得到通知以后就可以再去它的网站上看看。 功能比较简单,但是用到的点还是挺多的,这里记录一下。 主要有以下几个步骤 1. python beautifulsoup 与requests的使用 2. ubuntu 中安装 mysql 与mysql-python 3. beautifulsoup与requests编码的问题 4. 使用gmail发送邮件,其中gmail采用两步认证要单独申请一个密码 5. 在ubuntu中使用crontab定时来触发脚本
最近在项目中有一个比较特殊的需求,要求在每个月第二个周二暂停任务,然后周三再开启 于是在网上查了一下,python中有一个apscheduler库可以实现,而且这个框架还挺强大的 这里记录一下它的使用
在使用python做网站的时候首先接触的就是webpy了,这个框架小巧简单,对于小型的网络应用功能足以了,在使用的过程中也遇到过一些总是,在这里也记录总结一下
最近写一个小脚本,在使用系统急救箱扫描并且处理完后,要将处理以后的样本和提供的标准进行对比 已经提供了样本与处理以后的文件,我要写的脚本就是启急救箱并且将两个文件夹进行比较 启动并且扫描比较好实现,但是在进行文件夹对比的时候走了一些弯路 上网查到python的标准库里有一个filecmp类,这个类可以对文件夹或者文件进行对比,使用起来还是比较方便的 filecmp官方文档/
使用最下面的例子程序,我又对其进行了扩充
我想达到的目的就是先对两个文件夹进行比较,输出不同的文件,然后再输出各自文件夹中独有的文件
在国内使用pip安装包的时候,很多时候由于各种原因无法正常使用pypi.python.org的源,还好有国内的良心网站提供了国内镜像
网上的方法都是在%HOMEPATH%中新建pip目录,再新建一个pip.ini,可是我试了以后还是不能用,也不知道原作者是否可以用
后来我看了一下它的文档
最近项目中有个需求要在至少100台手机上对应用进行兼容性测试,首先想到的就是自动化来操作,不想一台台的操作相同的重复操作
基本的需求是这样的,安装被测试的应用,启动并退出,然后安装测试样本,检测是否有相应的弹窗拦截
考虑到市面上的各种测试框架与自已熟悉的编程语言,最后选择了google自家的uiautomator来搞,借助于前人对其进行了python封装,所以一开始还是挺顺利的,但是整个过程中还是有很多需要注意的地方
最近在看wxPython,一开始觉得它的布局好乱,半天整不明白,这里通过写一个小工具来记录一下wxPython的一些基本使用
小工具最终是下面这个样子,将文件拖到上面会自动计算其md5与size
下面这段介绍来自于appium的官网。
Appium is an open-source tool you can use to automate mobile native, mobile web, and mobile hybrid applications on iOS and Android platforms. “Mobile native apps” are those written using the iOS or Android SDKs. “Mobile web apps” are web apps accessed using a mobile browser (Appium supports Safari on iOS and Chrome on Android). “Mobile hybrid apps” have a native wrapper around a “webview” – a native control that enables interaction with web content. Projects like Phonegap, for example, make it easy to build apps using web technologies that are then bundled into a native wrapper – these are hybrid apps.
Importantly, Appium is “cross-platform”: it allows you to write tests against multiple platforms (iOS, Android), using the same API. This enables a large or total amount of code reuse between iOS and Android testsuites. 我们可以从上面的介绍里获得这样的一些信息:
4,appium是跨平台的,可以用在osx,windows以及linux桌面系统上;
appium的哲学