অনেকগুলি এপিআই-এর জন্য (বেশিরভাগ আমি দেখেছি) রেটলিমিটিং করা আপনার এপিআই কী বা OAuth শংসাপত্রগুলির ফাংশন। (গুগল, টুইটার, এনওএএ, ইয়াহু, ফেসবুক, ইত্যাদি) সুসংবাদটি হ'ল আপনার আইপি ফাঁকি দেওয়ার দরকার নেই, সেখানে রেট সীমাবদ্ধতার কারণে আপনাকে শংসাপত্রগুলি সরিয়ে নিতে হবে।
এখানে কিছুটা নির্লজ্জ স্ব-প্রচার প্রচার করা হয়েছে তবে আমি এই সমস্যাটি হ্যান্ডেল করার জন্য একটি অজগর প্যাকেজ লিখেছি।
https://github.com/rawkintrevo/angemilner
https://pypi.python.org/pypi/angemilner/0.2.0
এটিতে একটি মংডোব ডেমন প্রয়োজন এবং মূলত আপনি আপনার প্রতিটি কীগুলির জন্য একটি পৃষ্ঠা তৈরি করেন। সুতরাং আপনার আলাদা আলাদা কী সহ প্রত্যেককে 4 টি ইমেল ঠিকানা রয়েছে। আপনি যখন কীটি লোড করেন তখন প্রতিদিনের সর্বোচ্চ কল এবং ব্যবহারের মধ্যে সর্বনিম্ন সময় নির্দিষ্ট করে।
কীগুলি লোড করুন:
from angemilner import APIKeyLibrarian
l= APIKeyLibrarian()
l.new_api_key("your_assigned_key1", 'noaa', 1000, .2)
l.new_api_key("your_assigned_key2", 'noaa', 1000, .2)
তারপরে আপনি যখন আপনার স্ক্র্যাপারটি চালাবেন উদাহরণস্বরূপ NOAA এপিআই:
url= 'http://www.ncdc.noaa.gov/cdo-web/api/v2/stations'
payload= { 'limit': 1000,
'datasetid': 'GHCND',
'startdate': '1999-01-01' }
r = requests.get(url, params=payload, headers= {'token': 'your_assigned_key'})
হয়ে:
url= 'http://www.ncdc.noaa.gov/cdo-web/api/v2/stations'
payload= { 'limit': 1000,
'datasetid': 'GHCND',
'startdate': '1999-01-01' }
r = requests.get(url, params=payload, headers= {'token': l.check_out_api_key('noaa')['key']})
সুতরাং আপনার যদি 5 টি কী l.check_out_api_key
থাকে তবে কমপক্ষে ব্যবহার করা কীটি ফিরে আসে এবং এটি পুনরায় ব্যবহারের জন্য পর্যাপ্ত সময় ব্যয় না হওয়া পর্যন্ত অপেক্ষা করে।
অবশেষে আপনার কীগুলি কতবার ব্যবহৃত হয়েছে / অবশিষ্ট ব্যবহার উপলব্ধ রয়েছে তা দেখার জন্য:
pprint(l.summary())
আমি আর এর জন্য লিখিনি কারণ বেশিরভাগ স্ক্র্যাপিং অজগর (বেশিরভাগ MY স্ক্র্যাপিং) এ করা হয়। এটি সহজেই পোর্ট করা যায়।
আপনি প্রযুক্তিগতভাবে কীভাবে হার সীমাবদ্ধ করতে পারেন তা স্থায়ী ts নৈতিকভাবে ...
আপডেট করুন উদাহরণটি এখানে Google প্লেস এপিআই ব্যবহার করে