গুগল ডেটা পাইথন লাইব্রেরি দিয়ে শুরু করা

Jeffrey Scudder, Google Data APIs টিম
আগস্ট 2007

ভূমিকা

তাই আপনি অনেকগুলি Google ডেটা পরিষেবার মধ্যে একটি ব্যবহার করে একটি অ্যাপ্লিকেশন লিখতে Google ডেটা পাইথন ক্লায়েন্ট লাইব্রেরি ব্যবহার করার সিদ্ধান্ত নিয়েছেন৷ দারুণ পছন্দ! এই সংক্ষিপ্ত টিউটোরিয়ালটির সাথে আমার লক্ষ্য হল আপনার অ্যাপ্লিকেশন বিকাশের জন্য ক্লায়েন্ট লাইব্রেরি ব্যবহার করে দ্রুত শুরু করা।

আপনি সম্ভবত ঝাঁপিয়ে পড়তে চান এবং এখনই আপনার অ্যাপ্লিকেশন তৈরি করা শুরু করতে চান। যদিও প্রথমে, আপনাকে আপনার ডেভেলপমেন্ট এনভায়রনমেন্ট কনফিগার করতে হবে এবং ক্লায়েন্ট লাইব্রেরিতে অন্তর্ভুক্ত মডিউলগুলি চালানোর জন্য আপনার প্রয়োজনীয় সরঞ্জামগুলি সেট আপ করতে হবে। নীচের পদক্ষেপগুলি অনুসরণ করুন এবং আপনি কিছুক্ষণের মধ্যে কোড চালাতে পারবেন।

পাইথন ইনস্টল করা হচ্ছে

আপনি যদি পাইথন ক্লায়েন্ট লাইব্রেরির সাথে বিকাশ করতে যাচ্ছেন, আপনার পাইথন 2.2 বা উচ্চতর একটি কার্যকরী সংস্করণের প্রয়োজন হবে। অনেক অপারেটিং সিস্টেম পাইথনের সংস্করণ সহ আসে, তাই আপনি ইনস্টলেশনের ধাপটি এড়িয়ে যেতে সক্ষম হতে পারেন। আপনার কাছে পাইথনের কোন সংস্করণ আছে তা দেখতে, একটি কমান্ড লাইন টার্মিনালে python -V চালান। (দ্রষ্টব্য: V বড় হাতের।) এর ফলে এমন কিছু হওয়া উচিত:

Python 2.4.3

আপনি যদি 2.2 বা উচ্চতর সংস্করণ দেখতে পান, তাহলে আপনি নির্ভরতা ইনস্টল করা শুরু করতে পারেন। অন্যথায়, আপনার অপারেটিং সিস্টেমের জন্য ইনস্টলেশন/আপগ্রেড নির্দেশাবলী খুঁজতে নীচে দেখুন।

উইন্ডোজে পাইথন ইনস্টল করা

উইন্ডোজ থেকে বেছে নেওয়ার জন্য পাইথনের বেশ কয়েকটি বাস্তবায়ন রয়েছে, কিন্তু এই নির্দেশিকাটির উদ্দেশ্যে, আমি python.org- এ পাওয়া .msi ইনস্টলারটি ব্যবহার করব।

  1. পাইথন ডাউনলোড পৃষ্ঠা থেকে ইনস্টলারটি ডাউনলোড করে শুরু করুন।
  2. ইনস্টলার চালান - আপনি সমস্ত ডিফল্ট সেটিংস গ্রহণ করতে পারেন৷
  3. আপনার ইনস্টল প্রত্যাশিত হিসাবে কাজ করছে কিনা তা দেখতে, একটি কমান্ড প্রম্পট খুলুন এবং python -V চালান।

ম্যাক ওএস এক্স-এ পাইথন ইনস্টল করা হচ্ছে

python.org-এ ডাউনলোডের তালিকায় ম্যাক ব্যবহারকারীদের জন্য .dmg ইনস্টলার রয়েছে। তাদের মধ্যে একটি ইনস্টল করার পদক্ষেপগুলি এখানে রয়েছে:

  1. http://www.python.org/download/mac/ এ নেভিগেট করুন
  2. এই পৃষ্ঠা থেকে, Mac OS X-এর উপযুক্ত সংস্করণের জন্য ইনস্টলারটি ডাউনলোড করুন৷ দ্রষ্টব্য: Mac OS X 10.3.8 এবং নীচের জন্য Python ইনস্টলেশন পৃষ্ঠাটি Mac OS X-এর নতুন সংস্করণগুলির থেকে আলাদা৷ আপনার OS X সংস্করণ খুঁজতে, সম্পর্কে নির্বাচন করুন৷ আপনার স্ক্রিনের উপরের-বাম কোণায় অ্যাপল মেনু থেকে এই ম্যাক
  3. ডাউনলোড শেষ হওয়ার পরে, এটি মাউন্ট করতে নতুন ডিস্ক ইমেজ ফাইলে (যেমন python-2.5-macosx.dmg) ডাবল-ক্লিক করুন। আপনি যদি সাফারি চালান তবে এটি ইতিমধ্যে আপনার জন্য করা হয়েছে।
  4. মাউন্ট করা চিত্রটি খুলুন এবং ভিতরে ইনস্টলার প্যাকেজটিতে ডাবল ক্লিক করুন।
  5. ইনস্টলেশন নির্দেশাবলী অনুসরণ করুন এবং তথ্য এবং লাইসেন্স চুক্তিগুলি আপনার কাছে উপস্থাপিত হওয়ার সাথে সাথে পড়ুন। আবার, ডিফল্ট সেটিংস এখানে ঠিক কাজ করবে।
  6. Terminal.app (/Applications/Utilities-এ) খুলে python -V চালিয়ে ইনস্টলেশন যাচাই করুন। ইনস্টলেশনের সংস্করণটি উপস্থিত হওয়া উচিত।

লিনাক্সে পাইথন ইনস্টল করা হচ্ছে

লিনাক্স এবং অন্যান্য *নিক্স স্টাইল অপারেটিং সিস্টেমে ইনস্টল করার জন্য, আমি সোর্স কোড ডাউনলোড করতে এবং কম্পাইল করতে পছন্দ করি। যাইহোক, আপনি পাইথন ইনস্টল করতে আপনার প্রিয় প্যাকেজ ম্যানেজার ব্যবহার করতে সক্ষম হতে পারেন। (উদাহরণস্বরূপ, উবুন্টুতে এটি কমান্ড লাইনে sudo apt-get install python চালানোর মতো সহজ হতে পারে।) উত্স থেকে ইনস্টল করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. পাইথন ডাউনলোড পৃষ্ঠা থেকে উৎস টারবল ডাউনলোড করুন।
  2. একবার আপনি প্যাকেজটি ডাউনলোড করার পরে, কমান্ড লাইন ব্যবহার করে এটি আনপ্যাক করুন। আপনি নিম্নলিখিত
    tar zxvf Python-2.<Your version>.tgz
    ব্যবহার করতে পারেন
  3. এর পরে, আপনাকে পাইথন ইন্টারপ্রেটারের জন্য সোর্স কোড কম্পাইল এবং ইনস্টল করতে হবে। ডিকম্প্রেসড ডিরেক্টরিতে, একটি মেকফাইল তৈরি করতে ./configure চালান।
  4. তারপর, make রান. এটি স্থানীয় ডিরেক্টরিতে একটি কার্যকরী পাইথন এক্সিকিউটেবল ফাইল তৈরি করবে। আপনার যদি রুট অনুমতি না থাকে বা আপনি আপনার হোম ডিরেক্টরি থেকে পাইথন ব্যবহার করতে চান তবে আপনি এখানে থামতে পারেন। আপনি এই ডিরেক্টরি থেকে পাইথন চালাতে সক্ষম হবেন, তাই আপনি এটিকে আপনার PATH এনভায়রনমেন্ট ভেরিয়েবলে যোগ করতে চাইতে পারেন।
  5. আমি পাইথনকে /usr/bin/ এ ইনস্টল করতে পছন্দ করি যেখানে বেশিরভাগ পাইথন স্ক্রিপ্ট দোভাষীর সন্ধান করে। আপনার যদি রুট অ্যাক্সেস থাকে তবে রুট হিসাবে make install চালান। এটি ডিফল্ট অবস্থানে পাইথন ইনস্টল করবে এবং এটি আপনার মেশিনে প্রত্যেকের দ্বারা ব্যবহারযোগ্য হবে।
  6. একটি টার্মিনাল খুলে এবং python -V চালিয়ে আপনার ইন্সটল আশানুরূপ কাজ করছে কিনা তা পরীক্ষা করে দেখুন।

নির্ভরতা ইনস্টল করা

বর্তমানে, একমাত্র বাহ্যিক নির্ভরতা হল ElementTree নামে একটি XML লাইব্রেরি। আপনি যদি পাইথন সংস্করণ 2.5 বা উচ্চতর ব্যবহার করেন তবে আপনাকে ElementTree ইনস্টল করতে হবে না কারণ এটি পাইথন প্যাকেজের সাথে আসে।

ElementTree আপনার সিস্টেমে ইতিমধ্যে উপস্থিত আছে কিনা তা দেখতে, নিম্নলিখিতগুলি করুন:

  1. পাইথন ইন্টারপ্রেটার চালান। আমি সাধারণত কমান্ড লাইনে python নির্বাহ করে এটি করি।
  2. ElementTree মডিউল আমদানি করার চেষ্টা করুন। আপনি যদি পাইথন 2.5 বা উচ্চতর ব্যবহার করেন, তাহলে ইন্টারপ্রেটারে নিম্নলিখিতটি লিখুন:
    from xml.etree import ElementTree
    পুরানো সংস্করণগুলির জন্য, লিখুন:
    from elementtree import ElementTree
  3. যদি আমদানি ব্যর্থ হয়, তাহলে আপনাকে এই বিভাগটি পড়া চালিয়ে যেতে হবে। যদি এটি কাজ করে, তাহলে আপনি Google ডেটা লাইব্রেরি ইনস্টল করা এড়িয়ে যেতে পারেন।
  4. আপনার অপারেটিং সিস্টেমের জন্য উপযুক্ত একটি সংস্করণ ডাউনলোড করুন। উদাহরণস্বরূপ, আপনি যদি উইন্ডোজ ব্যবহার করেন তবে elementtree-1.2.6-20050316.win32.exe ডাউনলোড করুন। অন্যান্য অপারেটিং সিস্টেমের জন্য, আমি একটি সংকুচিত সংস্করণ ডাউনলোড করার পরামর্শ দিই।
  5. আপনি যদি লাইব্রেরির .tar.gz বা .zip সংস্করণ ব্যবহার করেন, তাহলে প্রথমে আনপ্যাক করুন, তারপর ./setup.py install চালিয়ে এটি ইনস্টল করুন।

লাইব্রেরি কম্পাইল করার এবং আপনার পাইথন মডিউলগুলির জন্য সিস্টেম ডিরেক্টরিতে স্থাপন করার জন্য ./setup.py install চেষ্টা চলছে। আপনার যদি রুট অ্যাক্সেস না থাকে, তাহলে আপনি ./setup.py install --home=~ চালিয়ে আপনার হোম ডিরেক্টরিতে বা একটি বিকল্প অবস্থানে মডিউলগুলি ইনস্টল করতে পারেন। এটি আপনার হোম ডিরেক্টরিতে কোডটি স্থাপন করবে।

আরেকটি বিকল্প আছে যা সম্পূর্ণভাবে ইনস্টল করা এড়িয়ে যায়। একবার আপনি ডাউনলোড ডিকম্প্রেস করলে, আপনি elementtree নামে একটি ডিরেক্টরি পাবেন। এই ডিরেক্টরিতে মডিউলগুলি রয়েছে যা আপনাকে আমদানি করতে হবে। আপনি যখন পাইথনের মধ্যে থেকে আমদানি কল করেন, তখন এটি বেশ কয়েকটি জায়গায় পছন্দসই নাম সহ একটি মডিউল সন্ধান করে। এটি বর্তমান ডিরেক্টরিতে প্রথম স্থানটি দেখায়, তাই আপনি যদি সর্বদা একটি ডিরেক্টরি থেকে আপনার কোডটি চালান তবে আপনি সেখানে elementtree ডিরেক্টরিটি রাখতে পারেন। Python আপনার PYTHONPATH এনভায়রনমেন্ট ভেরিয়েবলের তালিকাভুক্ত ডিরেক্টরিগুলিও দেখবে। আপনার PYTHONPATH সম্পাদনা করার নির্দেশাবলীর জন্য, এই নিবন্ধের শেষে পরিশিষ্ট দেখুন। আমি elementtree এর জন্য ./setup.py install ব্যবহার করার পরামর্শ দিচ্ছি।

গুগল ডেটা লাইব্রেরি ইনস্টল করা হচ্ছে

আপনি যদি না করে থাকেন তাহলে Google Data Python লাইব্রেরি ডাউনলোড করুন। পাইথন প্রকল্পের ডাউনলোড পৃষ্ঠায় সর্বশেষ সংস্করণটি দেখুন।

লাইব্রেরি ডাউনলোড করার পরে, আপনি যে ধরনের ডাউনলোড করেছেন তার উপর নির্ভর করে unzip বা tar zxvf ব্যবহার করে এটিকে আনপ্যাক করুন।

এখন আপনি লাইব্রেরি মডিউলগুলি ইনস্টল করার জন্য প্রস্তুত যাতে সেগুলি পাইথনে আমদানি করা যায়। আপনি এটি করতে পারেন বিভিন্ন উপায় আছে:

  • যদি আপনার কাছে সমস্ত ব্যবহারকারীর অ্যাক্সেসের জন্য প্যাকেজগুলি ইনস্টল করার ক্ষমতা থাকে তবে আপনি আনপ্যাক করা সংরক্ষণাগারের প্রধান ডিরেক্টরি থেকে ./setup.py install চালাতে পারেন৷
  • আপনি যদি আপনার হোম ডিরেক্টরিতে ব্যবহারের জন্য এই মডিউলগুলি ইনস্টল করতে চান, আপনি ./setup.py install --home= <your home Directory> চালাতে পারেন।
  • কিছু ক্ষেত্রে, আপনি মডিউলগুলি সম্পূর্ণরূপে ইনস্টল করা এড়াতে চান। এটি করার জন্য, Google ডেটা পাইথন ক্লায়েন্ট লাইব্রেরির জন্য gdata এবং atom ডিরেক্টরি রয়েছে এমন একটি ডিরেক্টরি অন্তর্ভুক্ত করতে আপনার PYTHONPATH এনভায়রনমেন্ট ভেরিয়েবল পরিবর্তন করুন। আপনার PYTHONPATH পরিবর্তন করার নির্দেশাবলীর জন্য, এই নিবন্ধের শেষে পরিশিষ্ট দেখুন।

  • একটি চূড়ান্ত বিকল্প যা আমি উল্লেখ করব, আপনি python চালানোর সময় src ডিরেক্টরি থেকে আপনি যে ডিরেক্টরিতে থাকেন তাতে gdata এবং atom ডিরেক্টরিগুলি অনুলিপি করা। আপনি যখন আমদানি করবেন তখন পাইথন বর্তমান ডিরেক্টরিতে দেখবে, তবে আপনি দ্রুত এবং সহজ কিছু তৈরি না করা পর্যন্ত আমি এই পদ্ধতিটি সুপারিশ করি না।

একবার আপনি Google ডেটা লাইব্রেরি ইনস্টল করলে, আপনি একটি টেস্ট ড্রাইভের জন্য লাইব্রেরি নিতে প্রস্তুত৷

চলমান পরীক্ষা এবং নমুনা

Google Data 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 ডকুমেন্ট লিস্ট API নমুনা আপনাকে আপনার Google অ্যাকাউন্টের ইমেল ঠিকানা এবং পাসওয়ার্ডের জন্য অনুরোধ করবে। আপনার যদি Google ডকুমেন্টে কোনো নথি বা স্প্রেডশীট থাকে, তাহলে আপনি আপনার নির্বাচিত অপারেশনের জন্য 1 লিখে তালিকাভুক্ত করতে পারেন। (যদি আপনার কাছে কোনো নথি বা স্প্রেডশীট না থাকে, তাহলে আপনি একটি 404 ত্রুটি পাবেন।)

যদি একটি নির্দিষ্ট Google ডেটা পরিষেবা থাকে যা আপনাকে আগ্রহী করে, তাহলে আপনি কীভাবে লাইব্রেরি ব্যবহার করতে পারেন তার একটি প্রাথমিক ধারণা পেতে এটির নমুনাটি দেখুন। বেশিরভাগ বৈশিষ্ট্যগুলি নমুনা কোডে প্রদর্শিত হয়, তাই আপনি API এর সাথে কী করতে পারেন তার একটি পরিষ্কার চিত্র পেতে আপনি যে পরিষেবাটির সাথে কাজ করার পরিকল্পনা করছেন তার জন্য ডকুমেন্টেশনটি একবার দেখতে চাইতে পারেন৷

একটি "হ্যালো ওয়ার্ল্ড" উদাহরণ লেখা

একটি সহজ উদাহরণ দিয়ে শুরু করা যাক। আপনার 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

হয় উপরের কোড স্নিপেটটিকে একটি ফাইল হিসাবে সংরক্ষণ করুন এবং এটি চালান, অথবা কর্মরত Google ডেটা পাইথন ক্লায়েন্ট লাইব্রেরি দেখতে পাইথন ইন্টারপ্রেটারে কোডটি পেস্ট করুন৷

উপসংহার

এখন আপনি Google ডেটা পাইথন ক্লায়েন্ট লাইব্রেরি ইনস্টল এবং পরীক্ষা করেছেন, আপনি পরবর্তী দুর্দান্ত অ্যাপ্লিকেশনটি ব্যবহার করে লেখা শুরু করতে প্রস্তুত:

আপনি আপনার অ্যাপ্লিকেশান ডেভেলপ করা চালিয়ে যাওয়ার সাথে সাথে আপনি একটি সমস্যায় পড়তে পারেন। যদি তাই হয়, অনুগ্রহ করে নীচের সংস্থানগুলির তালিকাটি দেখুন:

আপনি যদি লাইব্রেরির জন্য একটি দুর্দান্ত নতুন বৈশিষ্ট্যের কথা ভাবেন (বা সুযোগে একটি বাগ খুঁজে পান), দয়া করে এটি আলোচনা গোষ্ঠীতে প্রবেশ করুন৷ আমরা সবসময় আপনার প্রতিক্রিয়া আগ্রহী!

শুভ কোডিং :-)

পরিশিষ্ট: PYTHONPATH পরিবর্তন করা

আপনি যখন পাইথনে একটি প্যাকেজ বা মডিউল আমদানি করেন, তখন দোভাষী PYTHONPATH এনভায়রনমেন্ট ভেরিয়েবলে তালিকাভুক্ত সমস্ত ডিরেক্টরি সহ অবস্থানগুলির একটি সিরিজে ফাইলটি সন্ধান করে। আমি প্রায়ই আমার PYTHONPATH পরিবর্তন করি মডিউলগুলিকে নির্দেশ করতে যেখানে আমি একটি লাইব্রেরির জন্য সোর্স কোড কপি করেছি যা আমি ব্যবহার করছি। এটি প্রতিবার পরিবর্তন করার সময় একটি মডিউল ইনস্টল করার প্রয়োজনীয়তাকে বাধা দেয় কারণ পাইথন মডিউলটিকে সরাসরি ডাইরেক্টরি থেকে লোড করবে যেখানে পরিবর্তিত সোর্স কোড রয়েছে।

আপনি যদি ক্লায়েন্ট লাইব্রেরি কোডে পরিবর্তন করেন, বা আপনার সিস্টেমে অ্যাডমিন অধিকার না থাকলে আমি PYTHONPATH পদ্ধতির সুপারিশ করি। PYTHONPATH সম্পাদনা করে, আপনি প্রয়োজনীয় মডিউলগুলি আপনার পছন্দ মতো যে কোনও জায়গায় রাখতে পারেন।

আমি আমার .bashrc শেল কনফিগারেশন ফাইলে সেট করে একটি *nix এবং Mac OS X সিস্টেমে আমার PYTHONPATH পরিবর্তন করেছি। আপনি যদি bash শেল ব্যবহার করেন, তাহলে আপনি আপনার ~/.bashrc ফাইলে নিম্নলিখিত লাইন যোগ করে ভেরিয়েবল সেট করতে পারেন।

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

তারপর আপনি source ~/.bashrc সম্পাদন করে আপনার বর্তমান শেল সেশনে এই পরিবর্তনগুলি প্রয়োগ করতে পারেন।

Windows XP-এর জন্য, আপনার প্রোফাইলের জন্য এনভায়রনমেন্ট ভেরিয়েবলগুলি টানুন: কন্ট্রোল প্যানেল > সিস্টেম প্রোপার্টিজ > অ্যাডভান্সড > এনভায়রনমেন্ট ভেরিয়েবল । সেখান থেকে, আপনি PYTHONPATH ভেরিয়েবল তৈরি বা সম্পাদনা করতে পারেন এবং আপনার স্থানীয় লাইব্রেরি কপির অবস্থান যোগ করতে পারেন।