摘要:明明加了锁保护,还是出了下面的问题ProgrammingError: SQLite objects created in a thread can only be used in that same thread.The object was created in thread id 4460 and this is thread id 7608解决方式: sqlite3.connect(fp,check_same_thread = False) 阅读全文
多线程下,Python Sqlite3报[SQLite objects created in a thread can only be used...]问题
2013-07-31 18:45 by 江湖么名, 6421 阅读, 2 推荐, 收藏, 编辑Python 插件杂谈 (1) ---- chardet
2013-07-31 10:58 by 江湖么名, 384 阅读, 0 推荐, 收藏, 编辑
摘要:Python做为一门应用广泛,粉丝众多的语言。吸引了无数的开发者为其添砖加瓦。笔者使用python逾一个月,就接触了许多 python插件,写篇文章,仅做记录. 第一个介绍的是 chardet. chardet是为了探测python中字符集问题而开发的插件。>>> import urllib>>> urlread = lambda url: urllib.urlopen(url).read()>>> import chardet>>> chardet.detect(urlread("http://google.c 阅读全文
Python—HTTP处理Gzip压缩数据
2013-07-30 23:33 by 江湖么名, 8585 阅读, 0 推荐, 收藏, 编辑
摘要:HTTP 请求中包含Accept-encoding: gzip头信息可以告诉服务器,如果它有任何新数据要发送给我时,请以压缩的格式发送。如果服务器支持压缩,它将返回由 gzip 压缩的数据并且使用Content-encoding: gzip头信息标记。#codeing:utf-8import urllib2, httplibimport StringIOimport gzipdef findUrlGzip(url):request =urllib2.Request(url)request.add_header('Accept-encoding', 'gzip') 阅读全文
python之md5模块
2013-07-30 23:30 by 江湖么名, 912 阅读, 0 推荐, 收藏, 编辑
摘要:python的md5模块使用非常简单,包括以下几个函数:md5.new([arg])返回一个md5对象,如果给出参数,则相当于调用了update(arg)md5.updte(arg)用string参数arg更新md5对象md5.digest()返回16字节的摘要,由传给update的string生成,摘要没有ascii字符md5.hexdigest()以16进制的形式返回摘要代码示例:01.#!/usr/bin/python02.import sys03.import md504.05.str=sys.argv[1]06.key = md5.new()07.key.update(str)08. 阅读全文
python访问web的利器:urllib2
2013-07-30 23:26 by 江湖么名, 773 阅读, 1 推荐, 收藏, 编辑
摘要:使用Python访问网页主要有三种方式: urllib, urllib2, httpliburllib比较简单,功能相对也比较弱,httplib简单强大,但好像不支持session1. 最简单的页面访问res=urllib2.urlopen(url)print res.read()2. 加上要get或post的数据data={"name":"hank", "passwd":"hjz"}urllib2.urlopen(url, urllib.urlencode(data))3. 加上http头header={&quo 阅读全文
urllib2模块、cookielib模块
2013-07-30 23:13 by 江湖么名, 5431 阅读, 1 推荐, 收藏, 编辑
摘要:urllib2模块 urllib模块和urllib模块类似,用来打开URL并从中获取数据。与urllib模块不同的是,urllib模块不仅可以使用urlopen() 函数还可以自定义Opener来访问网页。同时要注意:urlretrieve()函数是urllib模块中的,urllib2模块中不存在该函数。但是 使用urllib2模块时一般都离不开urllib模块,因为POST的数据需要使用urllib.urlencode()函数来编码。 一、urlopen() 最简单的请求方式就是用urlopen()函数。 urlopen (url [,data ,[timeout]]) 函数打开URL u. 阅读全文
Python BeautifulSoup 简单笔记
2013-07-30 22:54 by 江湖么名, 18420 阅读, 1 推荐, 收藏, 编辑
摘要:Beautiful Soup 是用 Python 写的一个 HTML/XML 的解析器,它可以很好的处理不规范标记并生成剖析树。通常用来分析爬虫抓取的web文档。对于 不规则的 Html文档,也有很多的补全功能,节省了开发者的时间和精力。Beautiful Soup 的官方文档齐全,将官方给出的例子实践一遍就能掌握。官方英文文档,中文文档一 安装 Beautiful Soup 安装 BeautifulSoup 很简单,下载 BeautifulSoup 源码。解压运行 python setup.py install 即可。测试安装是否成功。键入 import BeautifulSoup 如果没有 阅读全文
Python 标准库 urllib2 的使用细节
2013-07-30 22:35 by 江湖么名, 357 阅读, 0 推荐, 收藏, 编辑
摘要:Python 标准库中有很多实用的工具类,但是在具体使用时,标准库文档上对使用细节描述的并不清楚,比如 urllib2 这个 HTTP 客户端库。这里总结了一些 urllib2 的使用细节。Proxy 的设置Timeout 设置在 HTTP Request 中加入特定的 HeaderRedirectCookie使用 HTTP 的 PUT 和 DELETE 方法得到 HTTP 的返回码Debug LogProxy 的设置urllib2 默认会使用环境变量 http_proxy 来设置 HTTP Proxy。如果想在程序中明确控制 Proxy 而不受环境变量的影响,可以使用下面的方式import 阅读全文
SQLite使用小结
2013-07-30 19:00 by 江湖么名, 3969 阅读, 0 推荐, 收藏, 编辑
摘要:一、SQLite简介 SQLite是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如Tcl、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源世界著名的数据库管理系统来讲,它的处理速度比他们都快。 SQLite虽然很小巧,但是支持的SQL语句不会逊色于其他开源数据库,它支持的SQL包括: ATTACH DATABA... 阅读全文
Python与SQLite日期时间函数的使法
2013-07-30 18:29 by 江湖么名, 1224 阅读, 0 推荐, 收藏, 编辑
摘要:SQLite的时间函数跟Python的时间函数有些许差别,所以稍做记录,供自己以后查询。 网上有将SQLite官方WIKI内容翻译成中文的文章,大家有兴趣可以搜索一下,我这里单纯记录一下个人比较常用的一些内容。SQLite的五个时间函数:date(日期时间字符串, 修正符, 修正符, ......)time(日期时间字符串, 修正符, 修正符, ......)datetime(日期时间字符串, 修正符, 修正符, ......)julianday(日期时间字符串, 修正符, 修正符, ......)strftime(日期时间格式, 日期时间字符串, 修正符, 修正符, ......) date 阅读全文