Google 데이터 Python 라이브러리 시작하기

Jeffrey Scudder, Google 데이터 API팀
2007년 8월

소개

그래서 Google 데이터 Python 클라이언트 라이브러리를 사용하여 여러 Google 데이터 서비스 중 하나를 사용하여 애플리케이션을 작성하기로 했습니다. 탁월한 선택이었습니다. 이 짧은 튜토리얼의 목표는 클라이언트 라이브러리를 사용하여 애플리케이션을 빠르게 개발하는 것입니다.

지금 바로 애플리케이션을 만들고 싶을 것입니다. 하지만 먼저 개발 환경을 구성하고 클라이언트 라이브러리에 포함된 모듈을 실행하는 데 필요한 도구를 설정해야 할 수도 있습니다. 아래 단계를 따르면 코드를 빠르게 실행할 수 있습니다.

Python 설치

Python 클라이언트 라이브러리를 사용하여 개발하려면 Python 2.2 이상의 작동 버전이 필요합니다. 대부분의 운영체제에는 Python 버전이 포함되어 있으므로 설치 단계를 건너뛸 수 있습니다. 사용 중인 Python 버전을 확인하려면 명령줄 터미널에서 python -V를 실행하세요. (참고: V는 대문자입니다.) 그러면 다음과 같이 표시됩니다.

Python 2.4.3

버전 2.2 이상이 표시되면 종속 항목 설치를 시작할 수 있습니다. 그렇지 않은 경우 아래에서 운영체제의 설치/업그레이드 안내를 확인하세요.

Windows에 Python 설치

Windows에서 선택할 수 있는 Python 구현이 많지만 이 가이드에서는 python .org에 있는.msi 설치 프로그램을 사용하겠습니다.

  1. 먼저 Python 다운로드 페이지에서 설치 프로그램을 다운로드합니다.
  2. 설치 프로그램을 실행합니다. 모든 기본 설정을 수락할 수 있습니다.
  3. 설치가 예상대로 작동하는지 확인하려면 명령 프롬프트를 열고 python -V를 실행합니다.

Mac OS X에 Python 설치

python.org의 다운로드 목록에는 Mac 사용자를 위한 .dmg 설치 프로그램이 있습니다. 다음 중 하나를 설치하는 방법은 다음과 같습니다.

  1. http://www.python.org/download/mac/로 이동합니다.
  2. 이 페이지에서 해당하는 Mac OS X 버전의 설치 프로그램을 다운로드하세요. 참고: Mac OS X 10.3.8 이하의 Python 설치 페이지는 최신 버전의 Mac OS X와 다릅니다. OS X 버전을 찾으려면 화면 왼쪽 상단의 Apple 메뉴에서 이 Mac 정보를 선택하세요.
  3. 다운로드가 완료되면 새 디스크 이미지 파일 (예: python-2.5-macosx.dmg)을 더블클릭하여 마운트합니다. Safari를 사용하고 있다면 이 단계는 이미 완료된 것입니다.
  4. 마운트된 이미지를 열고 안에 있는 설치 프로그램 패키지를 더블클릭합니다.
  5. 설치 안내에 따라 제공되는 정보와 라이선스 계약을 확인합니다. 이번에도 기본 설정은 제대로 작동합니다.
  6. /Applications/Utilities에서 터미널을 열고 python -V를 실행하여 설치를 확인합니다. 설치 버전이 표시됩니다.

Linux에 Python 설치

Linux 및 기타 *nix 스타일의 운영체제에 설치하려면 소스 코드를 다운로드하여 컴파일하는 것이 좋습니다. 하지만 원하는 패키지 관리자를 사용하여 Python을 설치할 수도 있습니다. 예를 들어 Ubuntu에서는 명령줄에서 sudo apt-get install python를 실행하는 것만큼 쉽습니다. 소스에서 설치하려면 다음 단계를 따르세요.

  1. Python 다운로드 페이지에서 소스 tarball을 다운로드합니다.
  2. 패키지를 다운로드한 후 명령줄을 사용하여 압축을 풉니다. 다음
    tar zxvf Python-2.<Your version>.tgz
    를 사용할 수 있습니다.
  3. 다음으로 Python 인터프리터용 소스 코드를 컴파일하고 설치해야 합니다. 압축 해제된 디렉터리에서 ./configure를 실행하여 makefile을 생성합니다.
  4. 그런 다음 make를 실행합니다. 이렇게 하면 로컬 디렉터리에 Python 실행 파일이 생성됩니다. 루트 권한이 없거나 홈 디렉터리에서 Python만 사용하려면 여기에서 멈추세요. 이 디렉터리에서 Python을 실행할 수 있으므로 PATH 환경 변수에 추가하는 것이 좋습니다.
  5. 대부분의 Python 스크립트가 인터프리터를 검색하는 /usr/bin/에 Python을 설치하고 싶습니다. 루트 액세스 권한이 있다면 make install를 루트로 실행합니다. 그러면 기본 위치에 Python이 설치되고 머신의 모든 사용자가 사용할 수 있게 됩니다.
  6. 터미널을 열고 python -V을 실행하여 설치가 예상대로 작동하는지 확인합니다.

종속 항목 설치

현재 유일한 외부 종속 항목은 ElementTree라는 XML 라이브러리입니다. Python 버전 2.5 이상을 사용하는 경우 Python 패키지와 함께 제공되므로 ElementTree를 설치할 필요가 없습니다.

ElementTree가 이미 시스템에 있는지 확인하려면 다음을 실행합니다.

  1. Python 인터프리터를 실행합니다. 이를 위해 보통 명령줄에서 python를 실행합니다.
  2. ElementTree 모듈을 가져옵니다. Python 2.5 이상을 사용하는 경우 인터프리터에 다음을 입력합니다.
    from xml.etree import ElementTree
    이전 버전의 경우 다음을 입력합니다.
    from elementtree import ElementTree
  3. 가져오기에 실패하면 이 섹션을 계속 읽어야 합니다. 제대로 작동한다면 Google 데이터 라이브러리 설치로 건너뛸 수 있습니다.
  4. 운영체제에 맞는 버전을 다운로드하세요. 예를 들어 Windows를 사용 중인 경우 elementtree-1.2.6-20050316.win32.exe를 다운로드합니다. 다른 운영체제의 경우 압축 버전을 다운로드하는 것이 좋습니다.
  5. .tar.gz 또는 .zip 버전의 라이브러리를 사용하는 경우 먼저 압축을 해제한 다음 ./setup.py install를 실행하여 설치합니다.

./setup.py install를 실행하면 라이브러리를 컴파일하고 Python 모듈의 시스템 디렉터리에 배치합니다. 루트 액세스 권한이 없으면 ./setup.py install --home=~를 실행하여 홈 디렉터리나 대체 위치에 모듈을 설치할 수 있습니다. 그러면 코드가 홈 디렉터리에 배치됩니다.

완전히 설치하지 않는 또 다른 옵션이 있습니다. 다운로드한 파일의 압축을 풀면 이름이 elementtree인 디렉터리가 표시됩니다. 이 디렉터리에는 가져와야 하는 모듈이 포함되어 있습니다. Python 내에서 import를 호출하면 여러 위치에서 원하는 이름을 가진 모듈을 찾습니다. 첫 번째로 표시되는 위치는 현재 디렉터리에 있으므로 항상 한 디렉터리에서 코드를 실행하는 경우 그 디렉터리에 elementtree 디렉터리를 배치하면 됩니다. Python은 PYTHONPATH 환경 변수에 나열된 디렉터리도 살펴봅니다. PYTHONPATH 수정에 대한 안내는 이 도움말 하단의 부록을 참조하세요. elementtree에는 ./setup.py install를 사용하는 것이 좋습니다.

Google 데이터 라이브러리 설치

Google 데이터 Python 라이브러리를 다운로드하지 않은 경우 다운로드합니다. Python 프로젝트의 다운로드 페이지에서 최신 버전을 찾습니다.

라이브러리를 다운로드한 후 선택한 다운로드 유형에 따라 unzip 또는 tar zxvf를 사용하여 압축을 풉니다.

이제 라이브러리 모듈을 설치하여 Python으로 가져올 수 있습니다. 다음과 같은 방법으로 확인할 수 있습니다.

  • 모든 사용자가 액세스할 수 있는 패키지를 설치할 수 있으면 압축 해제 된 보관 파일의 기본 디렉터리에서 ./setup.py install를 실행할 수 있습니다.
  • 이러한 모듈을 홈 디렉터리에 사용하기 위해 설치하려면 ./setup.py install --home=<홈 디렉터리>를 실행하면 됩니다.
  • 경우에 따라 모듈 전체를 설치하지 않는 것이 좋습니다. 이렇게 하려면 Google 데이터 Python 클라이언트 라이브러리의 gdataatom 디렉터리가 포함된 디렉터리를 포함하도록 PYTHONPATH 환경 변수를 수정합니다. PYTHONPATH 수정에 대한 안내는 이 문서 마지막의 부록을 참고하세요.

  • 마지막으로 언급할 마지막 옵션은 src 디렉터리의 gdataatom 디렉터리를 python를 실행할 때 있는 디렉터리에 복사하는 것입니다. Python은 가져올 때 현재 디렉터리를 확인하지만, 빠르고 간단하게 만드는 경우가 아니라면 이 방법을 사용하지 않는 것이 좋습니다.

Google 데이터 라이브러리를 설치했으면 시험용 라이브러리를 사용할 수 있습니다.

테스트 및 샘플 실행

Google 데이터 Python 클라이언트 라이브러리 배포판에는 라이브러리 개발에 사용되는 일부 테스트 사례가 포함됩니다. 또한 종속 항목 및 라이브러리 설치가 작동하는지 확인하는 간단한 검사의 역할도 합니다. 라이브러리 사본을 압축 해제한 최상위 디렉터리에서 다음을 실행해 보세요.

./tests/run_data_tests.py

이 스크립트가 올바르게 실행되면 다음과 같은 명령줄이 출력됩니다.

Running all tests in module gdata_test
.......
----------------------------------------------------------------------
Ran 7 tests in 0.025s

OK

Running all tests in module atom_test
..........................................
----------------------------------------------------------------------
Ran 42 tests in 0.016s

OK

...

테스트가 실행될 때 오류가 표시되지 않았다면 환경을 올바르게 설정했을 수 있습니다. 축하합니다.

이제 더 흥미로운 내용을 실행할 수 있습니다. 배포에는 애플리케이션을 작성하기 위한 시작점을 제공할 수 있는 코드가 포함된 samples 디렉터리가 포함됩니다. 간단한 대화형 샘플을 사용해 보려면 ./samples/docs/docs_example.py를 실행해 보세요. Google Documents List API 샘플에서 Google 계정의 이메일 주소와 비밀번호를 입력하라는 메시지가 표시됩니다. Google 문서에 문서나 스프레드시트가 있으면 선택한 작업의 1를 입력하여 나열할 수 있습니다. (문서나 스프레드시트가 없는 경우 404 오류가 표시됩니다.)

관심 있는 특정 Google 데이터 서비스가 있다면 샘플을 살펴보고 라이브러리 사용 방법에 관한 기본 아이디어를 얻으세요. 전부는 아니지만 대부분의 기능이 샘플 코드에 설명되어 있으므로 API로 할 수 있는 작업을 명확하게 파악하기 위해 사용할 서비스에 관한 문서를 살펴보는 것이 좋습니다.

'Hello World' 예시 작성

간단한 예를 들어 보겠습니다. 다음은 Google 문서 계정의 모든 문서 목록을 인쇄하는 간단한 프로그램입니다.

import gdata.docs.service

# Create a client class which will make HTTP requests with Google Docs server.
client = gdata.docs.service.DocsService()
# Authenticate using your Google Docs email address and password.
client.ClientLogin('jo@gmail.com', 'password')

# Query the server for an Atom feed containing a list of your documents.
documents_feed = client.GetDocumentListFeed()
# Loop through the feed and extract each document entry.
for document_entry in documents_feed.entry:
  # Display the title of the document on the command line.
  print document_entry.title.text

위의 코드 스니펫을 파일로 저장하고 실행하거나 코드를 Python 인터프리터에 붙여넣어 실제로 작동하는 Google 데이터 Python 클라이언트 라이브러리를 확인합니다.

마무리

이제 Google 데이터 Python 클라이언트 라이브러리를 설치하고 테스트했으므로 다음을 사용하여 멋진 애플리케이션을 작성할 수 있습니다.

애플리케이션을 계속 개발하면 문제가 발생할 수 있습니다. 그렇다면 아래 리소스 목록을 확인하세요.

라이브러리에 유용한 새 기능이 있다고 생각되거나 우연히 버그를 발견한 경우 토론 그룹에 입력해 주세요. YouTube는 항상 사용자의 의견을 환영합니다.

즐겁게 코딩해 보세요 :-)

부록: PYTHONPATH 수정

Python으로 패키지 또는 모듈을 가져오면 인터프리터는 PYTHONPATH 환경 변수에 나열된 모든 디렉터리를 포함하여 일련의 위치에서 파일을 찾습니다. 종종 사용 중인 라이브러리의 소스 코드를 복사한 모듈을 가리키도록 PYTHONPATH를 수정합니다. 이렇게 하면 Python이 수정된 소스 코드가 포함된 디렉터리에서 바로 모듈을 로드하므로 모듈이 수정될 때마다 모듈을 설치할 필요가 없습니다.

클라이언트 라이브러리 코드를 변경하거나 시스템에 대한 관리자 권한이 없는 경우 PYTHONPATH 접근 방식을 사용하는 것이 좋습니다. PYTHONPATH를 수정하여 필요한 모듈을 원하는 위치에 배치할 수 있습니다.

PYTHONPATHnix 및 Mac OS X 시스템의 .bashrc 셸 구성 파일에서 PYTHONPATH를 설정하여 수정했습니다. bash 셸을 사용하는 경우 ~/.bashrc 파일에 다음 줄을 추가하여 변수를 설정할 수 있습니다.

export PYTHONPATH=$PYTHONPATH:/home/<my_username>/svn/gdata-python-client/src

그런 다음 source ~/.bashrc를 실행하여 이러한 변경사항을 현재 셸 세션에 적용할 수 있습니다.

Windows XP의 경우 프로필에서 환경 변수 > 시스템 속성 > 고급 > 환경 변수로 이동합니다. 여기에서 PYTHONPATH 변수를 만들거나 수정하고 로컬 라이브러리 사본의 위치를 추가할 수 있습니다.