使用Oracle数据库实现Python数据持久
2010-09-22 11:08:54 来源:WEB开发网尽管 Python 的真正功能在于它能够隐藏令人厌烦的实现详细信息,从而提供一个简单、优美而有效的编码解决方案。字典、列表和列表内涵是常用的 Python 内置类型,在处理结构化数据时可以显著简化您的代码。返回在前面部分中讨论的 oraclepersist.py 脚本,对其进行升级,以便最大程度地利用这些杰出的 Python 语言工具。为了避免混淆,您可以将修订保存在一个单独的名为 oraclepersist_list.py 的文件中:
import cx_Oracle
import urllib2
import xml.dom.minidom
url = 'http://feeds.delicious.com/v2/rss/OracleTechnologyNetwork/otntecharticle'
inxs = ['title','guid','pubDate','link']
num = 3
def getRSS(addr):
xmldoc = xml.dom.minidom.parseString(urllib2.urlopen(addr).read())
items = xmldoc.getElementsByTagName('item')
return items
articles = [dict(zip(inxs,[item.getElementsByTagName(inx)[0].firstChild.data for inx in inxs])) for index, item in enumerate(getRSS(url)) if index < num]
def processClick(guid, clks = 1):
db = cx_Oracle.connect('usr', 'pswd', '127.0.0.1/XE')
c = db.cursor()
c.execute('''call count_clicks(:guid, :clks)''', {'guid':guid, 'clks':clks})
db.close()
从以上代码可以看出,利用列表内涵(一种非常有效的结构化应用程序数据的机制)可以显著减少代码总量。此外,客户端也不必显式调用模块函数。因此,您现在可以重新编写按照前面部分所述嵌入在 clicktrack.psp 中的 Python 代码块,如下所示:
- ››使用脚本恢复WinXP系统的用户登录密码
- ››使用phpMyadmin创建数据库及独立数据库帐号
- ››使用Zend Framework框架中的Zend_Mail模块发送邮件...
- ››使用cout标准输出如何控制小数点后位数
- ››使用nofollow标签做SEO的技巧
- ››数据库大型应用解决方案总结
- ››Oracle 数据库导入导出 dmp文件
- ››使用 WebSphere Message Broker 的 WebSphere Tra...
- ››使用SQL Server事件探查器做应用程序的性能分析
- ››使用SQL Server事件探查器分析死锁原因
- ››Oracle Application Server 的安装
- ››使用纯文本文件打造WCF服务
更多精彩
赞助商链接