지훈현서

Sources

Posts

345 posts

[Python] requests에서 file://... 로컬 URL 내용 가져오기

지훈현서|2018년 5월 21일

URL 에 보면,"http://host:port/rel_path/..." 와 같은 식으로 해당 내용을 HTTP로 가져올 수도 있고,"file://..." 과 같이 로컬에 있는 파일을 가져 올 수도 있습니다. 그런데 파이썬의 requests 모듈에도 그런 방법이 디폴트로 있나 확인해 보았더니 없더군요.이럴 때 사용할 수 있는 모듈이 requests-file 이라는 것이 있었습니다. 간단히 다음과 같이 설치하고, pip install requests-file 다음과 같이 간단한 샘플로 잘 동작합니다. import requestsfrom requests_file import FileAdapter s = requests.Session()s.mount('file://', FileAdapter()) res

[Python] Windows COM (ActiveX) client 사용

지훈현서|2018년 5월 16일

기존에 어떤 라이브러리가 윈도우에서 Active-X로 작성되어 설치되어 있다고 가정합니다.그러면 MS의 인터넷 익스플로러를 이용해서 이 ActiveX를 JavaScript에서 사용해 온 경우가 무척이 많습니다. 그런데 필요에 따라 기존에 MSIE에서 ActiveX 부분만을 따로 떼어 무언가 작업을 하고,웹 부분은 HTML5 표준으로 만들어야 한다고 생각해 봅니다. 그러면 이 ActiveX 부분을 쉽게 파이썬으로 작업이 가능할까요??정답은 Yes. 그것도 아주 훌륭하게 말이지요. 다음에 적용해 보았던 방법을 간단하게 설명해 봅니다. 우선 COM을 사용하기 위하여 다음 패키지를 설치합니다. pip.exe install pywin32 이제 간단한 코드를 확인해 보겠습니다. 우선 다음의 세 줄을 imp

[Python] decorator를 이용한 함수의 doc string 구하기

[Python] decorator를 이용한 함수의 doc string 구하기

지훈현서|2018년 5월 11일

파이썬에서 데코레이터에 대한 고찰을 확인해 본 적이 있습니다만,아래와 같은 아주 간단한 데코레이터를 이용한 foo 라는 함수가 있다고 가정합니다. def decorator1(f): def _decorator(): print('decorator active') f() return _decorator @decorator1def foo(): """the magic foo function""" print('this is function foo') print('foo.__doc__="%s"' % foo.__doc__) 위에서 foo 함수위에 @decorator1 라는 데코레이터가 없다면 print('foo.__doc__="%s"' % foo.__doc__

[Python] PyCharm에서 임의의 코드를 디버깅하는 방법

[Python] PyCharm에서 임의의 코드를 디버깅하는 방법

지훈현서|2018년 5월 8일

파이썬에서 특정 문자열의 코드를 수행시키려면,exec(...) 빌트인 함수를 이용합니다. 예를 들어, code = """def myrun(): def sum(i, j): return i + j # pdb.set_trace() i = 1 j = 2 k = sum(i, j) print('sum of %s, %s = %s' % (i, j, k))if __name__ == '__main__': myrun()""" 위와 같은 code라는 문자열에 어느 파이썬 코드가 들어가 있다고 하였을 때, exec(code) 라고 실행하면 해당 코드가 실행됩니다. 그런데 이 방법을 이용하면 PyCharm 과 같은 IDE에서 해당 코드를디버깅 할 수 있는 방법이 없

[Python] 파이썬 클라이언트로 PHP Web Service 간단 호출

[Python] 파이썬 클라이언트로 PHP Web Service 간단 호출

지훈현서|2018년 5월 2일

굳이 언급을 하지 않더라도, 최근에는 RESTful API 가 대세입니다.프런트엔드와 백엔드를 나누는 관문이라고 할 수도 있겠습니다. 그 이전에 물론 SOAP, WebService 등이 있었기는 했었지요.더 거슬러 올라가면 RPC (Remote Procedure Call) 까지 가기는 합니다. 뭐 아직도 파이썬 기본 라이브러리에 XMLRPC가 존재하는 것은 당연한 것이기도 하겠지요. 암튼 최근에 PHP API 서비스 서버가 있다고 가정하고 파이썬 Client를 작성해 보았습니다.PHP를 마지막으로 사용한 것이 십년도 훨씬 더 되어 많이 까먹었지만,그 가락은 거의 유사할 것입니다. 테스트 소스는 api.php : API 서비스 샘플 코드api_test.py : API unittest python 샘플