목록python (157)
아미(아름다운미소)
SQLite은 엄청난 데이터베이스 엔진이다. 진심이다. 몇가지 단점이 있다: 병행 접근용으로 디자인되어 있지 않다 (쓰는 동안 데이터베이스 전체가 잠긴다). 지역적으로만 작동한다 (네트워크 서비스가 없다. 물론 sqlrelay 같은 걸 사용할 수 있다). 외래 키를 처리하지 못한다. 권한 관리가 없다 (grant/revoke). 장점은 다음과 같다: 아주 빠르다 (대부분의 연산에서 mySQL보다 빠르다). SQL-92 표준을 대부분 준수한다. 서비스를 설치할 필요가 없다. 데이터베이스 관리를 수행할 필요가 없다. 사용되지 않을 때에는 컴퓨터 메모리와 CPU를 소비하지 않는다. SQLite 데이터베이스는 간결하다 1 데이터베이스 = 1 파일 (손쉽게 이동/배치/백업/전송/이메일 처리를 할 수 있다). SQ..
윈도우즈에서, 데이터베이스에 접근하려면 ODBC 대신에 ADO도 사용할 수 있다 (Microsoft ActiveX Data Objects). 다음 코드는 ADO COM 객체를 사용하여 Microsoft SQL 서버 데이터베이스에 접근하여, 테이블을 열람하고 화면에 표시한다. import win32com.client connexion = win32com.client.gencache.EnsureDispatch('ADODB.Connection') connexion.Open("Provider='SQLOLEDB';Data Source='myserver';Initial Catalog='mydatabase';User ID='mylogin';Password='mypassword';") recordset = connex..
Microsoft SQL 서버가 있다면, 이런 상황을 맞이해 보았을 것이다. «Enterprise Manager (일명 MMC) 에서 모든 클릭을 스크립트할 수 있다면 얼마나 좋을까!». 할 수 있다 ! MMC로 할 수 있는 것이면 무엇이든 파이썬으로 스크립트할 수 있다. win32all 파이썬 모듈만 있으면 파이썬에서 COM 객체에 접근할 수 있다 (win32all 모듈은 ActiveState사의 파이썬 배포본으로도 제공된다) 일단 설치했으면, 그냥 SQL-DMO 객체를 사용하자. 예를 들어, 서버에 있는 데이터베이스 리스트를 얻자: from win32com.client import gencache s = gencache.EnsureDispatch('SQLDMO.SQLServer') s.Connect(..
이렇게 하려면 필요에 따라 네 가지 방법이 있다.listdir() 메쏘드는 한 디렉토리 안의 모든 파일을 담은 리스트를 돌려준다:import os for filename in os.listdir(r'c:\windows'): print filenamefnmatch() 모듈을 사용하면 파일 이름을 여과할 수 있다.glob 모듈은 listdir()과 fnmatch()를 하나의 모듈 안에 싸넣은 것이다:import glob for filename in glob.glob(r'c:\windows\*.exe'): print filename서브디렉토리를 모을 필요가 있다면, os.path.walk()를 사용하자:import os.path def processDirectory ( args, dirname, filenam..
파일 압축하기:import zipfile f = zipfile.ZipFile('archive.zip','w',zipfile.ZIP_DEFLATED) f.write('file_to_add.py') f.close()'w'를 'a'로 바꾸면 집 압축파일에 파일을 추가할 수 있다.집 압축파일에서 파일을 풀기:import zipfile zfile = zipfile.ZipFile('archive.zip','r') for filename in zfile.namelist(): data = zfile.read(filename) file = open(filename, 'w+b') file.write(data) file.close() 디렉토리 안에 있는 파일을 (모든 서브디렉토리를) 모두 재귀적으로 압축하고 싶으면 :imp..
웹서버 import BaseHTTPServer, SimpleHTTPServer server = BaseHTTPServer.HTTPServer(('',80),SimpleHTTPServer.SimpleHTTPRequestHandler) server.serve_forever()
웹 페이지에서 모든 링크 얻는 법(1) ... 정규 표현식의 마법을 활용하면.import re, urllib htmlSource = urllib.urlopen("http://sebsauvage.net/index.html").read(200000) linksList = re.findall('.*?',htmlSource) for link in linksList: print link 웹 페이지에서 모든 링크 얻는 법(2) HTMLParser 모듈을 사용할 수도 있다.import HTMLParser, urllib class linkParser(HTMLParser.HTMLParser): def __init__(self): HTMLParser.HTMLParser.__init__(self) self.links = [..