BLOG main image
분류 전체보기 (42)
잡담 (6)
활용 (17)
language (3)
project (14)
design (2)
자료정리 (0)
결혼 준비 (0)
sarl pyver
sarl pyver
geometry dash apk zippy
geometry dash apk zippy
geometry dash apk full
geometry dash apk full
cheap christian louboutin
cheap christian louboutin
herehoju.com
herehoju.com
232,728 Visitors up to today!
Today 0 hit, Yesterday 11 hit
daisy rss
tistory 티스토리 가입하기!
2012.01.18 10:43
쉘에서 간단하게 daum 영한 사전을 볼 수 있는 스크립트입니다. (한-영은 안됩니다.)
다음과 같이 사용하면 됩니다.

s-han.lee@s-han:~/bin$ dict bind
구속력이 있다, 굳어지다, 묶는 것

#!/usr/bin/python
# -*- coding: utf-8 -*-
# s-han.lee@samsung.com
# daum dictionary --pretty

def daumDict(word):
    import urllib2
    import re
    url = "http://small.dic.daum.net/search.do?q="+ word +"&dic=eng"
    try:
        source = urllib2.urlopen(url).read()
    except:
        print "load webpage fail. check your internet connection."
        return

    p = re.compile(r'
(.*)
') m = p.search(source) try: print m.group(1).replace(" ", " ") except: print "cannot found " + word import sys import getopt if __name__ == "__main__": if len(sys.argv) is 1: print "insucfficient args" sys.exit(1) word = sys.argv[1] daumDict( word )


emacs 의 경우아래 내용들을 .emacs 에 추가하시고 사용하시면 f8 또는 meta-f8 로 간단하게 영한 사전을 이용할 수 있습니다.
(defun eng-dict (query)
  (interactive (list (read-from-minibuffer "eng>han : " (concat (thing-at-point 'symbol) "") nil nil)))
  (message (substring (shell-command-to-string (concat "~/bin/dict " query)) 0 -1))
  )

(defun search-eng-dict ()
  (interactive)
  (message (substring (shell-command-to-string (concat "~/bin/dict " (concat (thing-at-point 'symbol) ""))) 0 -1))
  )

(global-set-key [(f8)] 'quick-eng-dict)
(global-set-key [(meta f8)] 'eng-dict)


gamja9e | 2012.07.19 14:00 신고 | PERMALINK | EDIT/DEL | REPLY
검색 스크립트를 잘 쓰고 있습니다.
daum 사전이 바뀌었는지 검색 결과에 태그가 들어가게 되어서 출력부분을 아래와 같이 수정 했습니다.
print re.sub(r"<.?daum:word[^>]*>", "", m.group(1).replace("&nbsp;", " "))
톱아보다 | 2012.07.23 13:41 신고 | PERMALINK | EDIT/DEL
고맙습니다~ ^^ 안그래도 고쳐야지 하면서 게으름 피우고 있었는데~ ㅎㅎ
애용자 | 2012.07.26 13:47 신고 | PERMALINK | EDIT/DEL | REPLY
저도 검색 스크립트 잘쓰고 있습니다.
gamja9e님 수정사항 반영하다가 네이밍때문에 한글도 됐으면 좋겠다 싶어 url을 좀 바꿔 보았습니다.

MAX_COUNT = 14

def printBuffer(d):
word = d['rq']
items = d['items'] + d['r_items']
if items:
for i, line in enumerate(items):
if i >= MAX_COUNT:
break
print line[7:]
else:
print "cannot found " + word

def daumDict(word):
import urllib2
url = "http://sug.dic.daum.net/dic_all_ctsuggest?mod=json&code=utf_in_out&enc=utf&cate=eng&q=" + word + "&callback=printBuffer"
try:
json = urllib2.urlopen(url).read()
except:
print "load webpage fail. check your internet connection."
return
eval(json[:-2].replace('|',' > '))

[...@localhost vendor]$ ./dict 사전
사전 > a dictionary, a wordbook, a lexicon
사전 준비 > advance preparations, preliminary arrangements, prearrangement
사전 운동 > preelection campaigning, pre-candidacy propaganda
사전 수회 > acceptance of a bribe before an act
사전 편집자 > a compiler of a dictionary, a lexicographer
사전 동의 > a prior consent, a consent before the fact
사전 검열 > prepublication censorship, pre-censorship
사전 종범자 > an accessory before the fact
사전 검사 > a preliminary inspection
사전 공작 > preparatory operations, advance work
백과 사전 > an encyclopedia
도해 사전 > a picture dictionary
지명 사전 > a geographical dictionary, a gazetteer
고사 숙어 사전 > a dictionary of fables and phrases

MAX_COUNT는 이맥스 창크기에 따라서 Message Buffer 라인수가 변경이 되어 잘리는 현상이 발견되어 넣었습니다. 이맥스 창에 맞춰 적당히 조절하시면 될듯합니다.
애용자 | 2012.07.26 13:47 신고 | PERMALINK | EDIT/DEL | REPLY
저도 검색 스크립트 잘쓰고 있습니다.
gamja9e님 수정사항 반영하다가 네이밍때문에 한글도 됐으면 좋겠다 싶어 url을 좀 바꿔 보았습니다.

MAX_COUNT = 14

def printBuffer(d):
word = d['rq']
items = d['items'] + d['r_items']
if items:
for i, line in enumerate(items):
if i >= MAX_COUNT:
break
print line[7:]
else:
print "cannot found " + word

def daumDict(word):
import urllib2
url = "http://sug.dic.daum.net/dic_all_ctsuggest?mod=json&code=utf_in_out&enc=utf&cate=eng&q=" + word + "&callback=printBuffer"
try:
json = urllib2.urlopen(url).read()
except:
print "load webpage fail. check your internet connection."
return
eval(json[:-2].replace('|',' > '))

[...@localhost vendor]$ ./dict 사전
사전 > a dictionary, a wordbook, a lexicon
사전 준비 > advance preparations, preliminary arrangements, prearrangement
사전 운동 > preelection campaigning, pre-candidacy propaganda
사전 수회 > acceptance of a bribe before an act
사전 편집자 > a compiler of a dictionary, a lexicographer
사전 동의 > a prior consent, a consent before the fact
사전 검열 > prepublication censorship, pre-censorship
사전 종범자 > an accessory before the fact
사전 검사 > a preliminary inspection
사전 공작 > preparatory operations, advance work
백과 사전 > an encyclopedia
도해 사전 > a picture dictionary
지명 사전 > a geographical dictionary, a gazetteer
고사 숙어 사전 > a dictionary of fables and phrases

MAX_COUNT는 이맥스 창크기에 따라서 Message Buffer 라인수가 변경이 되어 잘리는 현상이 발견되어 넣었습니다. 이맥스 창에 맞춰 적당히 조절하시면 될듯합니다.
gamja9e | 2012.08.10 11:03 신고 | PERMALINK | EDIT/DEL | REPLY
애용자님 덕에 더 이쁘게 잘 쓰고 있습니다.
Agen Bola | 2012.11.30 00:50 신고 | PERMALINK | EDIT/DEL | REPLY
맥스 창크기에 따라서 Message Buffer 라인수가 변경이 되어 잘리는 현상이 발견되어 넣었습니다. 이맥스 창에 맞춰 적당히 조절
Name
Password
Homepage
Secret

티스토리 툴바