ভূমিকা
API লিখার সবচেয়ে বড় সুবিধা হলো লাইভ/কারেন্ট ডেটা এক্সট্র্যাক্ট করা, এমনকি ডেটা দ্রুত পরিবর্তন হলেও। API প্রোগ্রাম খুব স্পেসিফিক URL দিয়ে তথ্য রিকোয়েস্ট করে (যেমন: Spotify-তে ২০২০ সালের টপ ১০০ গান)। রিকোয়েস্ট করা ডেটা JSON বা CSV ফরম্যাটে ফেরত আসে যা প্রসেস করা সহজ।
পাইথনে প্রায় যেকোনো URL-এ API কল লেখা যায়। এই উদাহরণে GitHub API থেকে ডেটা নেয়া এবং ভিজ্যুয়ালাইজ করা দেখানো হয়েছে। (Spotify API-এর জন্য আলাদা প্রি-রেকোয়ারিজ রয়েছে, তাই GitHub ব্যবহার করা হয়েছে।)
GitHub (ডেভেলপারদের ফেসবুক) ওয়াইড ভেরাইটি ডেটা এক্সট্র্যাক্ট করার API দেয়। উদাহরণস্বরূপ, সবচেয়ে বেশি স্টার থাকা জাভাস্ক্রিপ্ট রিপোজিটরি খুঁজে বের করা। GitHub API কি নয়ে 사용할 수 있습니다।
কীভাবে করবেন
requestsপ্যাকেজ ইনস্টল করুন:pip install requests- GitHub API কল করুন:
আউটপুট:import requests site_url = 'https://api.github.com/search/repositories?q=language:javascript&sort=stars' headers = {'Accept': 'application/vnd.github.v3+json'} response = requests.get(site_url, headers=headers) print(f"Output \n *** Response from {site_url} is {response.status_code} ")Response ... is 200 - JSON রেসপন্স পার্স করুন:
response_json = response.json() print(response_json.keys()) # dict_keys(['total_count', 'incomplete_results', 'items']) print(response_json['total_count']) # ১১ মিলিয়ন+ জাভাস্ক্রিপ্ট রিপো - প্রথম রিপোজিটরির ইনফো দেখুন:
repositories = response_json['items'] first_repo = repositories[0] print(first_repo['name'], first_repo['owner']['login'], first_repo['watchers_count']) # freeCodeCamp freeCodeCamp 316079 - Plotly দিয়ে ভিজ্যুয়ালাইজ করুন (
pip install plotly):from plotly.graph_objs import Bar from plotly import offline repo_names, repo_stars = [], [] for repo_info in repositories: repo_names.append(repo_info['name']) repo_stars.append(repo_info['stargazers_count']) data_plots = [{'type': 'bar', 'x': repo_names, 'y': repo_stars}] layout = {'title': 'GitHubs Most Popular Javascript Projects', 'xaxis': {'title': 'Repository'}, 'yaxis': {'title': 'Stars'}} fig = {'data': data_plots, 'layout': layout} offline.plot(fig, filename='Most_Popular_JavaScript_Repos.html')
এই HTML ফাইল ব্রাউজারে খুললে ইন্টারেক্টিভ বার চার্ট দেখাবে।