跳转至

python

使用Redis作为消息队列实现生产消费与发布订阅

日常的工作中,经常会用到队列(Queue),在python中有原生的队列,但是由于原生的队列是存在于内存当中,当系统重启后队列里的消息就没有,且无法进行分步式,Redis中的List数据有四种原语,LPUSH,LPOP,RPUSH,RPOP,配合使用可以实现简单的生产消费模型。

使用python抓取自住房信息

使用python也有一段时间了,最近比较关注自住房信息,虽说它更新的比较缓慢,但是平时也不怎么会特意的去它的网站上去看, 于是就想用python抓它的信息,如果有新的信息就给自己发个邮件,这样手机上得到通知以后就可以再去它的网站上看看。 功能比较简单,但是用到的点还是挺多的,这里记录一下。 主要有以下几个步骤 1. python beautifulsoup 与requests的使用 2. ubuntu 中安装 mysql 与mysql-python 3. beautifulsoup与requests编码的问题 4. 使用gmail发送邮件,其中gmail采用两步认证要单独申请一个密码 5. 在ubuntu中使用crontab定时来触发脚本

用于python的定时任务apscheduler的使用

最近在项目中有一个比较特殊的需求,要求在每个月第二个周二暂停任务,然后周三再开启 于是在网上查了一下,python中有一个apscheduler库可以实现,而且这个框架还挺强大的 这里记录一下它的使用

使用python进行文件夹对比

最近写一个小脚本,在使用系统急救箱扫描并且处理完后,要将处理以后的样本和提供的标准进行对比 已经提供了样本与处理以后的文件,我要写的脚本就是启急救箱并且将两个文件夹进行比较 启动并且扫描比较好实现,但是在进行文件夹对比的时候走了一些弯路 上网查到python的标准库里有一个filecmp类,这个类可以对文件夹或者文件进行对比,使用起来还是比较方便的 filecmp官方文档/

使用最下面的例子程序,我又对其进行了扩充 我想达到的目的就是先对两个文件夹进行比较,输出不同的文件,然后再输出各自文件夹中独有的文件

使用国内镜像源来加速python pypi包的安装

在国内使用pip安装包的时候,很多时候由于各种原因无法正常使用pypi.python.org的源,还好有国内的良心网站提供了国内镜像

网上的方法都是在%HOMEPATH%中新建pip目录,再新建一个pip.ini,可是我试了以后还是不能用,也不知道原作者是否可以用

后来我看了一下它的文档

使用uiautomator的python封装进行android的UI测试

最近项目中有个需求要在至少100台手机上对应用进行兼容性测试,首先想到的就是自动化来操作,不想一台台的操作相同的重复操作

基本的需求是这样的,安装被测试的应用,启动并退出,然后安装测试样本,检测是否有相应的弹窗拦截

考虑到市面上的各种测试框架与自已熟悉的编程语言,最后选择了google自家的uiautomator来搞,借助于前人对其进行了python封装,所以一开始还是挺顺利的,但是整个过程中还是有很多需要注意的地方

使用wxPython建立一个计算文件md5的GUI工具

最近在看wxPython,一开始觉得它的布局好乱,半天整不明白,这里通过写一个小工具来记录一下wxPython的一些基本使用

小工具最终是下面这个样子,将文件拖到上面会自动计算其md5与size

1

笨方法实现webpy的表单校验功能

最近在写一个小的demo,简单的用户注册与登录,检查在注册的时候要先检测用户名是否已经存在了,还要检查一下密码长度要不得小于3个字符

检查用户是否存在我是写在了一个单独的model.py里

1
2
3
4
5
6
def check(uname):
info = db.select('pytest',where="username=$uname",vars=locals())
if len(info)>0:
return False
else:
return True

appium简明教程(转)

乙醇的自动化教程写的挺好的,以下是转自他的cnblogs上面的博客

appium简明教程(1)——appium和它的哲学世界

什么是appium?

下面这段介绍来自于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. 我们可以从上面的介绍里获得这样的一些信息:

  • 1,appium是开源的移动端自动化测试框架;
  • 2,appium可以测试原生的、混合的、以及移动端的web项目;
  • 3,appium可以测试ios,android应用(当然了,还有firefox os);
  • 4,appium是跨平台的,可以用在osx,windows以及linux桌面系统上; appium的哲学