摘要:写这个的愿意是要从浏览器获得福利,利用浏览器容错的能力得到无错标准的HTML流var ELEMENT_NODE = 1;var TEXT_NODE = 3;var emptyString = "";var replaceFlag = "[firefox_thinkernote_pugin]";var cssArray = new Array();function elementToString(element){ function getScript(element) { /* if(element.childNodes.length == 0) ret
阅读全文
摘要:版本2#include <stdio.h>;int main(){ FILE *f; char c; if ( ( f = fopen( __FILE__, "r" ) ) != NULL ) { while ( fread( &c, 1, 1, f ) == 1 ) fwrite( &c, 1, 1, stdout ); fclose( f ); } return 0;}
阅读全文
摘要:版本1#include <stdio.h>int main(){char *p ="#include <stdio.h>%c int main(){char *p=%c%s%c; printf(p, 10, 34, p, 34);}";printf(p, 10, 34, p, 34);}评:这个实现非常精妙, 第一个p将当前字符串传递进去,作为printf的格式字符串,用后面的参数来替换格式字符串中的占位符(%c ,%c%s%c)生成一个新的字符串,第一个%c被替换为回车符(10的ASCII码值)%c%s%c则被替换为:"#include
阅读全文
摘要:https://addons.mozilla.org/en-US/developers/docs/reference首先给出firefox插件开发的官方文档列表,如果没有列表,那么开发firefox插件几乎不可能,光看中文资料也是会死的说,从老大给了任务,到基本完成任务,中间花了一周时间,这一周是痛苦而又极有成就感的一周,我的插件其实功能还算简单,就是在界面上添加一个按钮,点击按钮打开我们的主页,右键菜单上在加上一个菜单项,点击可以把当前页面存到我们的server上(HTTP接口)开发环境:ubuntu10.10 firefox 7.0基础知识:firefox插件是一个xpi文件,例如fire
阅读全文
摘要:#!/usr/bin/env python# -*- coding: utf-8 -*-#工厂模式def createDomTree(htmlStream,type='soup'): if type == "soup": return tnDomTreeWithSoup(htmlStream) if type == "lxml": return tnDomTreeWithlXml(htmlStream) return None #外部依赖的接口,它屏蔽了我具体使用的第三方库class tnDomTree: #public...
阅读全文
摘要:上次说到,用DOM树的方法替代正则表达式,去匹配替换具有特定属性值的HTML标签,第一次选用的是BeautifulSoup,但是领导更中意lxml这个库,因此我把代码抽取出来抽象成一个接口,让代码依赖接口,而不是具体的实现,代码并不知道我到底使用的是什么第三方库,后来更增加一个工厂方法,让外部连我用的什么类都不让它知道:)#!/usr/bin/env python# -*- coding: utf-8 -*-#工厂模式def createDomTree(htmlStream,type='soup'): if type == "soup": return tn
阅读全文
摘要:服务端读取Comment表并将结果集返回给调用者,调用者使用json.dumps将结果集转成json字符串列表返回给WEB前端。datetime字段dumps之后变成描述日期的字符串,例如'2012-4-1 12:31:01' JS无法操作这个日期,例如在该时间的基础上加减N天或者N个小时,再比如对两个时间进行比较。找出较早的时间,所以服务端先把datetime转成bigint,再传给客户端(如果是日期是MYSQL的timestamp类型就不需要转换,因为timestamp就是bigint)#webpy框架import web,time,datetimedef getList(
阅读全文