Pylons使用小记

Thumbnail

活着就是折腾,最近事情多的一塌糊涂,烦躁的很,导致log4d也荒废一个月了。今天趁着周五晚上,梳理一下最近学习的pylons知识。 关于Pylons Pylons是一个用pythons写的web框架,优点是配置灵活,默认使用[Mako](http: //www.makotemplates.org/)作为Template,SQLAlchemy作为 ORM映射。使用BSD作为授权协议。 托WSGI的福,python的web框架超多,甚至高手5分钟可以自己手写一个web框架,这种情况也导致了Python web框架的纷杂。我这里选择Pylons(其实是被选择),并不是说Pylons一定最好,而是比较适合当前项目。更多的Python web框架对比建议看这篇[浅谈Python web框架](http://feilong.me/2011/01/talk-about-python-web- framework),另外,这个Best Web- Framework有直观的对比。 ...

2011-05-16 · alswl

最简陋的GAE代理

年前换了一次服务器,之后发现Lifestream的Errors飙升到1000+错误,检查一下,发现是获 取不了豆瓣的rss链接。正好这台主机支持SSH,连入之后CURL了一下豆瓣服务器,发现Time out。 紧接着发现中国内的所有域名都无法使用CURL获取,联系小张之后,得知该主机曾经被入侵过,于是屏蔽了中国大陆的ip段(囧~入侵和中国ip有毛关系) 遂想用GAE做个代理服务器,反正获取RSS也只要Get一下,代码没几句。把这项任务放入Toodledo之后,就一直没去弄,今天发现GAE Laucher升级了,就部署到自己GAE上了。 ...

2011-01-11 · alswl

一周Python小记

上个星期以来忙里偷闲一直在写一系列小型的代码生成器,完成一些从需求到结构化代码生成和验证作业。这个小东西是用Python写的,我简单分享一下中间所得。 一、配置文件 1、YAML格式 数据库连接信息和作业相关信息是存放在数据库中的,配置文件形式可以有很多种选择:XML / ini / txt,我这里选择YAML作为存放。 YAML使用起来相当方便,能够自动解析成对应语言中的变量,比如列表解析为列表,数字文字分别解析成对应的格式变量。 之所以选择YAML,是看中它对语言的亲和性和可读性,GAE的配置文件就是YAML格式。YAML的语法相当简单,用:来分隔key: value,用 - 来分隔列表,注意点是缩进需要用空格,关键符号和内容之间要加上一个空格。我的配置文件如下: ...

2010-11-09 · alswl

Python读写剪贴板

最近在写一个CodeGenX代码生成器,说是生成器,其实是目前只完成一堆零散的脚本。这些脚本的调用方式一般是从某个txt中读取数据,再写到另外一个txt中。 由于某些数据变动频繁,导致我操作txt次数大增,我怒了,就找了一个脚本自动读写剪贴板。 #coding=utf-8 ''' 读写剪贴板 ''' import win32clipboard as w import win32con def getText(): w.OpenClipboard() d = w.GetClipboardData(win32con.CF_TEXT) w.CloseClipboard() return d def setText(aString): w.OpenClipboard() w.EmptyClipboard() w.SetClipboardData(win32con.CF_TEXT, aString) w.CloseClipboard() 别说有了这个脚本用起来还是蛮方便的,建议丢到Python的lib下面,然后可以方便调用。 如果双击 .py 文件调用可能产生无效的情况,测试发现在IDE环境下有效,如果想完成一键转换,就需要一个bat执行一下。 ...

2010-10-23 · alswl

小脚本mm->html

我同时在使用两套信息记录工具,知识收集记录工具BooguNote + KMS Wiz,关于这两套系统具体介绍请见桌面记录神器- BooguNote & 我所使用的知识管理系统。 我的使用习惯是在BooguNote中收集日常的琐碎知识点,包括我所想的和工作记录。每个小知识节点的长度大概在200-300字左右。这些被我称为的知识碎片显然 不能直接放入KMS。 BooguNote可以将里面的文字直接复制出来,会在父亲节点上加入+,子节点加入-,这种简单的txt不能满足我的要求。于是我花了点时间写了一个mm文件到ht ml的转换脚本。 ...

2010-09-27 · alswl

获取每日Bing图片

Thumbnail

在使用公司一个Redirect开发工具页面时候,想个性化一下,就想添加一个背景,最好每天能自动变化,我第一个想到的就是Bing。 放狗搜索,发现一篇文章 抓取每天必应bing背景图片 - huangct的专栏 - CSDN博客,文中提供了抓取程式的Python代码,我摘录如下。 import urllib import time def main(): url = 'http://www.bing.com' f = urllib.urlopen(url) html = f.read() f.close() a = html[html.index('/fd/hpk2'):] data = a[:a.index('',id:')] url = data.replace('\', '') url = 'http://www.bing.com'+url name=time.strftime("%Y%m%d", time.localtime()) name=name+".jpg" urllib.urlretrieve(url,name) if __name__ == "__main__": main() 关键的步骤是MS修改了jpg的url方式,用g_img={url:’/fd/hpk2/BambooBoat_ZH- CN1057817945.jpg’这样的字符串躲避机器人的抓取。简单的替换即可完成。 ...

2010-07-19 · alswl

铁血联盟EdtTxt转换器v0.9

上个月时候,zwwooooo同鞋联系我让帮写一个铁血联盟中需要用到的Edt<->Txt转换器,我前前后后大约三个星期完成 到v0.9,能完成基本的功能(但似乎存在一些未知Bug,-_-#)。由于我之后很长一段时间得找工作,所以不能继续维护这个小工具,现在把他的代码开放,如果有高 人能看到这个小工具,有兴趣的话可以继续维护下去,(zwwooooo,真的很不好意思……)。 一些关于程序说明,zwwooooo原文,更详细可以联系zwwooooo本人: edt(后缀) 是游戏对话文件,游戏里有很多种,但都是有规律的,我把一些规律和流程说一下 ...

2009-11-01 · alswl

Python输入16进制保存到文件

(题目有点勉强,不过问题真的很难描述,希望Google/Baidu到这里的童鞋不要失望) 前几天给zwwooooo写一个 小工具,其中遇到一个输入的问题。具体描述就是:“输入4个16进制的数字,如'00a0’,输入之后必须能够把这个输入给保存到文件中存为2进制格式,必须是原始的 16进制,而不是字符串类型。如’x00xa0’"。(其实这是用在处理文本上的) 不知道各位大大有没有明白我的意思,我花了很长时间没有一个好的解决方案。 第一种方案,先用int()转换,然后转换hex(),直接失败,hex()转换后格式为'0x00a0’,是字符串格式,根本不是我需要的内容。 我苦思冥想三天,终于找到一个最傻,也最好用的方法,用list进行匹配。 下面是生成匹配list的脚本: ...

2009-10-07 · alswl

GAE+校内App初接触

Thumbnail

下午刚有了在Google App Engine上写校内(人人网)App的想法,下午就迫不及待的开始动手。下面我以一个简单的Hello World来介绍一个开发步骤。 1.创建GAE应用 建立一个Google App Engine空间,需要一个Google帐号,仅此而已。拥有帐号,进入 App Engine ,激活这个服务,就可以创建新的应用。如何创建不是我这里要讲的重点,现在GAE支持简体中文版本,应该没有任何问题。 一个简单的App控制台 2.部署GAE App 刚才建立的GAE App其实还是空的,如果访问xxx.appspot.com时候,你会发现什么都出不来(按理应该是404页面,但是由于连404页面都没有设置 ,所以Nothing,检查http状态会发现返回的是404状态)。 ...

2009-09-28 · alswl

当Google APP Engine遇上校内

Thumbnail

昨天看《程序员》时候看到一篇讲开放接口的文章,是FaceBook的一个开发人员写的,讲了很多关于开放平台的东西 。其中提到Google App Engine的云计算支持,FaceBook的FBML(校内的称为XNML,一种标记性语言)。 Google App Engine(GAE) Google App Engine让用户可以在 Google 的基础架构上运行的网络应用程序。Google App Engine 应用程序易于构建和维护,并可根据用户的访问量和数据存储需要的增长轻松扩展。使用 Google App Engine,将不再需要维护服务器:用户只需上传用户的应用程序,它便可立即为用户的用户提供服务。 通俗的说,App Engine就像是免费提供的一个500M高性能的空间,和一个appspot.com二级域名。在Google强大的云计算能力下,服务器的速度 和质量毋容置疑。现在App Engine支持Python和Java(似乎Java有些限制,具体的细节我没有看)。 ...

2009-09-27 · alswl