ClientForm, ClientCookie

ClientForm

말 그대로 html 상에 있는 form 을 처리할수 있는 분이다. 아래의 코드를 잠시 보자. 얼마나 간단한가? 이 코드가 할수 있는 일은 정말 막강하다.

ClientForm 을 다운 받은후  “파이썬 루트/Lib\site-packages/ ” 에 ClientForm.py 복사 하시라…

#!/usr/bin/python
# -*- coding: cp949 -*-
from urllib2 import urlopen
from ClientForm 
import ParseResponse
import sys
if len(sys.argv) is 1 :
        print >> sys.stderr , '분석할 URL 을 넣어주세요.'
        exit(1)
response = urlopen(sys.argv[1])
forms = ParseResponse(response)
form = forms[0]
print form

수행 시켜보면 안다.

수행 예 ))  >python form.py  http://www.naver.com/

결과 ))
<GET http://search.naver.com/search.naver application/x-www-form-urlencoded
<SelectControl(where=[*nexearch, web, site, webkr, kin, doc, cafeblog, post, article, dic, …

python (*.py)을 실행 파일로 만들기

출처 : http://blog.paran.com/ehei/8072276

http://www.py2exe.org에서 프로그램을 다운받는다.

설명서대로 한다. 아주 쉽다. py2exe를 설치한 후 python/lib/site-package/py2exe/example 폴더에 보면 예제가 더 많다. 이 파일의 실행은 다음과 같이 한다.


python setup.py py2exe

빌드 중에 unicode 에러가 나오면 다음과 같이 한다.



  • C:\Python24\Lib\site.py 를 연다.
  • encoding = “ascii”를 찾는다 (기본 설정임)
  • 여기에 #를 달아 주석처리하고, 다음과 같이 넣고 저장한 후 다시 실행해본다. encoding = “euc-kr” 이래도 안되면 “utf-8” 그래도 안되면 “uhc”
  • 컴파일이 된다. ^^

문자를 아스키 코드 번호로 변환, ASCII Code 를 문자(Char)로 변환

문자를 “아스키 코드 번호”로 변환하려면 ord() 함수를 사용합니다. 출력 결과를 10진수 숫자가 아닌 “16진수 문자열”로 출력하려면 hex() 함수를 사용합니다. 그 반대로, “아스키 코드 번호”를 “실제 문자”로 변환하려면 chr() 함수를 사용합니다.
chr(0x5A) 이렇게 “16진수 숫자”를 넣을 수도 있습니다.

다음 예제는 알파벳 대문자 “Z” 를 변환하는 것입니다.

알파벳 대문자 “Z”의 아스키 코드는 10진수로 90, 16진수로는 0x5A 입니다.

#!/usr/bin/python
# -*- coding: cp949 -*-


print ord("Z")       # 출력 결과: 90
print hex(ord("Z"))  # 출력 결과: 0x5a


print chr(90)        # 출력 결과: Z
print chr(0x5A)      # 출력 결과: Z

오늘 날짜, 현재 시간 구하기

#!/usr/bin/python
# -*- coding: cp949 -*-

import time
now = time.localtime()


print "현재 년: %d" % (now.tm_year)
print "현재 월: %d" % (now.tm_mon)
print "현재 일: %d" % (now.tm_mday)

print

print "현재 시: %d" % (now.tm_hour)         # 24시간제
print "현재 분: %d" % (now.tm_min)
print "현재 초: %d" % (now.tm_sec)

print

print "오늘 요일: %d"      % (now.tm_wday)  # 월요일 = 0
print "올해 몇번째 날: %d" % (now.tm_yday)  # 1월 1일 = 1
print "서머타임 여부: %d"  % (now.tm_isdst) # 서머타임 없으면 0