एक वर्कफ़्लो जिसकी हर किसी को याद रखने की जरूरत नहीं होती, उससे बेहतर है जो हर कोई करने का इरादा रखता है। छह चरण आपको एक खाली शीट से एक मासिक जॉब तक ले जाते हैं जो अपनी लागत का लॉग बनाती है।
ASEOTools editorial team ·
छह चरण, लगभग एक घंटे में
01
साइन इन करें और कुंजी कॉपी करें
/auth/google.php पर Google साइन-इन का उपयोग करें। /account.php पर डैशबोर्ड में आपकी कुंजी होती है, जो sk_ से शुरू होती है और $100 क्रेडिट के साथ आती है।
02
एक मुफ्त टेस्ट कॉल बनाएं
अपने डोमेन पर बिना कुंजी के ओवरव्यू एक्शन चलाएं। यदि आपको JSON मिलता है जिसमें ok को true सेट किया गया है, तो नेटवर्क पाथ काम कर रहा है।
03
डोमेन लिस्ट तैयार करें
शीट में एक कॉलम, प्रत्येक पंक्ति में एक डोमेन, बिना https और बिना पाथ के। एकल bulk_dr अनुरोध में 2,000 पंक्तियां तक शामिल हो सकती हैं।
04
शीट या स्क्रिप्ट से bulk_dr कॉल करें
सूची को कॉमा-जॉइन्ड GET वैल्यू या POST बॉडी के रूप में भेजें। तारीख कॉलम के साथ दूसरी टैब में जवाब स्टोर करें।
05
इसे मासिक रूप से शेड्यूल करें
माह की शुरुआ के कुछ दिनों बाद जॉब चलाएं, एक बार जब मासिक इंडेक्स रिफ्रेश हो चुका हो। एक क्रॉन लाइन काफी है। पहले महीने के आउटपुट की जांच तीन ऐसे डोमेन के साथ हाथ से करें जिनके बारे में आपको अच्छी जानकारी है।
06
क्रेडिट लॉग करें और कम बैलेंस पर अलर्ट सेट करें
प्रत्येक प्रमाणीकृत जवाब _credits फ़ील्ड के साथ आता है जिसमें लागत और शेष बैलेंस होता है। दोनों को एक लॉग पंक्ति में लिखें और अपने चुने हुए थ्रेशोल्ड से नीचे ईमेल करें।
तैयार पेस्ट करने के लिए टुकड़े
अपनी खुद की कुंजी और फ़ाइल नाम डालें।
bash
# crontab: 06:00 on the 4th of each month
0 6 4 * * /usr/bin/curl -s -X POST \
-H "Authorization: Bearer sk_live_..." \
-d "domains=$(paste -sd, domains.txt)" \
"https://aseotools.com/api.php?action=bulk_dr" >> dr_log.jsonl
कुंजी को शीट से बाहर रखें
कुंजी को Apps Script प्रॉपर्टीज, एक एनवायरनमेंट वेरिएबल या आपके ऑटोमेशन टूल के क्रेडेंशियल स्टोर में रखें। शीट को एडिट करने का एक्सेस रखने वाला कोई भी व्यक्ति एक सेल में टाइप की गई कुंजी को पढ़ सकता है, और एक लीक हुई कुंजी आपका क्रेडिट खर्च कर सकती है।
यह सेटअप कहाँ फेल हो सकता है
सन्नात ही आमतौर पर विफलता होती है। एक क्रॉन जॉब जो एरर आउट होती है, वह एक कामयाब जॉब जैसी ही दिखती है।
HTTP कोड की जांच करें। 401 का मतलब है कि कुंजी गायब है या गलत है, और 402 का मतलब है कि क्रेडिट खत्म हो गया है, इसलिए दोनों पर अलर्ट सेट करें और अगले महीने की रिपोर्ट जमा होने से पहले इसे ठीक करें।
इसे भी याद रखें कि पेजिनेशन 50,000 पंक्तियों तक सीमित है, और bulk_dr प्रत्येक कॉल में 2,000 डोमेन तक लेता है। लंबी सूचियों के लिए चंकिंग की जरूरत होती है, जिसमें एक अतिरिक्त लूप होता है और प्रत्येक चंक के लिए एक क्रेडिट खर्च होता है।
पहले हाथ से टेस्ट करें। क्रॉन लाइन को टर्मिनल में चलाएं, लॉग फ़ाइल पढ़ें और जांचें कि बैलेंस बिल्कुल उतनी ही लागत से कम हुआ जितनी आपने अपेक्षा की थी। फिर देखें कि संख्याएं एक स्यूट प्लान से कैसे तुलना करती हैं और तय करें कि इसे कितनी बार चलाना है।
अपनी डोमेन लिस्ट का वर्जन रखें। फ़ाइल को एक रिपॉजिटरी या एक शेयर्ड ड्राइव में रखें जिसमें हिस्ट्री हो, ताकि जब मार्च में कोई नंबर बदल जाए तो आप देख सकें कि क्या लिस्ट भी बदली है। उन डोमेन के लिए एक नोट कॉलम जोड़ें जिन्हें आपने जानबूझकर जोड़ा है, जैसे कि एक नया प्रतिस्पर्धी या एक क्लाइंट जिसने उस महीने साइन इन किया। लिस्ट को एक ऐसे डेटा के रूप में मानें जिसका एक ओनर हो, क्योंकि सबसे सस्ता बग वही होता है जिसे आप एक डिफ में पकड़ते हैं।
एक लंबी सूची को चंक्स में बांटना
लंबी सूचियां वह जगह हैं जहां एक साफ़ सेटअप अपनी सीमा तक पहुंचता है। एक बल्क कॉल में 2,000 डोमेन तक होते हैं, इसलिए 5,000 की सूची के लिए तीन अनुरोधों की जरूरत होती है, और स्प्लिट पहले कॉल जाने से पहले होना चाहिए।
एक स्थिर नियम के आधार पर स्प्लिट करें, जैसे कि डोमेन कॉलम के सॉर्टेड ऑर्डर के अनुसार। इस तरह वही डोमेन हर महीने एक ही चंक में आता है, और तुलना बना रहती है।
2,000 पंक्तियों से ऊपर की सूचियां
प्रत्येक चंक को शीट में एक अलग ब्लॉक के रूप में लिखें, पहले कॉलम में चंक नंबर के साथ। इससे एक फेल हुए चंक को आसानी से खोजा जा सकता है।
प्रत्येक चंक के लिए एक क्रेडिट खर्च होता है, इसलिए 5,000 पंक्तियों की सूची के लिए रन में 3 क्रेडिट आते हैं, जो $0.0003 है। एक डोमेन रेटिंग टूल उतना ही उपयोगी है जितनी वह लिस्ट जो वह पढ़ता है, इसलिए उस लिस्ट को साफ़ रखें।
यदि लिस्ट 5,000 पंक्तियों से आगे बढ़ जाती है, तो शीट की लेआउट पर पुनर्विचार करें। महीने के हिसाब से टैब रखने से पंक्तियां जमा होने पर भी प्रत्येक रन पठनीय रहता है।
एक फेल हुए चंक को फिर से चलाना
यदि चंक दो में एरर आता है, तो केवल चंक दो को फिर से चलाएं। पूरी सूची को फिर से चलाने से उन पंक्तियों पर क्रेडिट खर्च होगा जो पहले ही वापस आ चुकी हैं।
चंक नंबर को स्टेटस कोड के साथ लॉग करें, ताकि ररन लॉग में एक लाइन हो, शीट में खोजने की जरूरत न पड़े।
चंक मैप को स्थिर रखना
यदि डोमेन लिस्ट का ऑर्डर बदल जाता है, तो चंक भी बदल जाते हैं, और माह-दर-माह की तुलना टूट जाती है। हर बार स्प्लिट करने से पहले लिस्ट को सॉर्ट करें।
चंक मैप को लिस्ट के साथ स्टोर करें।
एक सरल टेस्ट: किसी भी चंक को चुनें और उसकी पंक्तियों की गिनती लिस्ट से मिलाएं। एक मिसमैच का मतलब है कि मैप ड्रिफ्ट हो गया है, और यह शीट में रिपोर्ट की तुलना में सस्ता खोजा जा सकता है।
पूरी रूटीन की लागत, उदाहरण आकारों के साथ
अनुमानित लिस्ट आकार, प्रकाशित एक्शन कीमतें।
लिस्ट का आकार
प्रति माह कॉल
क्रेडिट
डॉलर
200 डोमेन
1
1
$0.0001
5,000 डोमेन
3
3
$0.0003
5,000 डोमेन plus 20 फुल बैकलिंक पुल
23
43
$0.0043
पहली शेड्यूल्ड रन से पहले क्या पुष्टि करें
एक चंक को हाथ से टेस्ट करें और पूरा जवाब पढ़ें
पुष्टि करें कि बैलेंस बिल्कुल उतने ही क्रेडिट से कम हुआ जितनी आपने अपेक्षा की थी
हर चंक के लिए स्टेटस कोड की जांच करें, केवल पहले के लिए नहीं
तीन ऐसे डोमेन की तुलना करें जिनके बारे में आपको अच्छी जानकारी है, उन आंकड़ों से जो आप पहले से भरोसेमंद मानते हैं
एक लॉग फ़ाइल पाथ सेट करें और तय करें कि हर महीने कौन इसे पढ़ेगा
शीट के शीर्ष पर ओनर का नाम लिखें
एक उपयोगी मासिक लॉग लाइन में क्या होना चाहिए
एक लॉग जो केवल ok कहता है, वह ज्यादातर लॉग नहीं है। प्रत्येक रन को एक लाइन लिखनी चाहिए जिसे एक थकी हुई आदमी दस सेकंड में पढ़ सके: तारीख, चंक, स्टेटस, खर्च हुए क्रेडिट और कॉल के बाद का बैलेंस।
अनुमानित: एक लाइन जो चंक चार, स्टेटस 200, एक क्रेडिट खर्च और कॉल के बाद बचे बैलेंस दिखाती है, एक महीने बाद अधिकांश सवालों का जवाब बिना जवाब खोले देती है।
लॉग करने के लायक फ़ील्ड
तारीख, लिस्ट का नाम, चंक नंबर, स्टेटस कोड, चार्ज किए गए क्रेडिट और कॉल के बाद का बैलेंस लॉग करें। वे छह फ़ील्ड एक महीने बाद अधिकांश सवालों को कवर करते हैं।
केवल तभी एक फ्री-टेक्स्ट नोट जोड़ें जब किसी व्यक्ति ने हाथ से कुछ बदला हो।
वे अलर्ट जो भेड़िया चिल्लाते हैं
401 या 402 पर तुरंत अलर्ट भेजें, क्योंकि दोनों का मतलब है कि जॉब अपना काम नहीं कर सकती। कम बैलेंस चेतावनी आपके चुने हुए थ्रेशोल्ड का उपयोग करनी चाहिए, ताकि वह एक बार फायर हो और अगला कदम क्या उठाना है, यह बताए।
प्रत्येक रन के लिए एक अलर्ट भेजें, प्रत्येक पंक्ति के लिए नहीं, वरना इनबॉक्स शोर बन जाएगा।
सेटअप सवाल
क्या एक Google Sheet क्लाइंट के रूप में काम कर सकता है?
हाँ। API एक सादा REST है जिसमें ओपन CORS और JSON जवाब हैं, इसलिए Apps Script या एक IMPORTDATA-शैली की कॉल इसे एक्सेस कर सकती है। कुंजी को कोलैबोरेटर्स द्वारा पढ़े जा सकने वाले एक सेल के बजाय स्क्रिप्ट प्रॉपर्टीज में रखें।
क्या मैं इसका उपयोग n8n या Make के साथ कर सकता हूं?
हाँ, एक सामान्य HTTP रिक्वेस्ट नोड के माध्यम से। कुंजी को एक Authorization Bearer हेडर के रूप में पास करें, JSON जवाब को पार्स करें, और _credits फ़ील्ड को अपने लॉग में लिखें ताकि आप रन प्रति खर्च देख सकें।
लॉग में इस डोमेन रेटिंग टूल के लिए अपेक्षा से अधिक लागत दिखाई क्यों देती है?
सिर्फ लिस्ट साइज नहीं, बल्कि कॉल की गिनती करें। हर रन में एक चंक, एक रीट्राई या एक टेस्ट कॉल अपनी लागत जोड़ता है, और हर जवाब में _credits फ़ील्ड उस कॉल के लिए सटीक संख्या देता है।
क्या कुंजी को क्रॉन लाइन में ही रखना चाहिए?
यह सरल है, लेकिन जो भी व्यक्ति crontab पढ़ सकता है, वह कुंजी भी पढ़ सकता है। इसे प्रतिबंधित अनुमतियों वाली एक फ़ाइल से लोड करें या जॉब के लिए सेट एनवायरनमेंट वेरिएबल से, और इसे शेयर्ड लॉग से बाहर रखें।
जब जॉब टूट जाती है तो कौन नोटिस करता है
एक मासिक जॉब बिना किसी के देखे चलती है। यही ऑटोमेट करने का मकसद है, और यही कारण है कि विफलता सप्ताहों तक अनदेखी रह सकती है।
उस व्यक्ति का नाम बताएं जो लॉग पढ़ता है और उस व्यक्ति का नाम बताएं जो जॉब ठीक करता है। दो नाम एक से बेहतर हैं। छुट्टियां आती हैं। रनबुक समझाता है कि पहले लिस्ट कैसे चुननी है।
सेटअप बनाए रखने में बिताया गया समय
पहली रन में ज्यादातर घंटा लगता है, क्योंकि कुंजी, शीट और टेस्ट कॉल सभी को ध्यान देने की जरूरत होती है। उसके बाद रूटीन को हर महीने एक झलक की जरूरत होती है, एक रीबिल्ड की नहीं।
यदि अपकीप बढ़ जाती है, तो आमतौर पर लिस्ट ही कारण होती है। एक लिस्ट जो हर सप्ताह बदलती है, उसका एक ओनर, एक वर्जन और जोड़ने के लिए एक नियम की जरूरत होती है।
एक विफलता को दृश्यमान बनाना
आउटपुट में एक गायब पंक्ति एक साइलेंट एरर से आसानी से बड़ी होती है। प्रत्येक रन पर पंक्ति गिनती को लिस्ट की लंबाई से तुलना करें, और जब वे अलग हों तो एक चेतावनी लिखें।
उस चेतावनी को उसी लॉग फ़ाइल में रखें, ताकि लॉग पढ़ने वाला व्यक्ति उसे पहले देखे।
इंडेक्स रिफ्रेश के आसपास शेड्यूलिंग
इंडेक्स लगभग एक बार मासिक रिफ्रेश होता है, इसलिए माह की पहले दिन एक रन पिछले बिल्ड के आंकड़े पढ़ सकता है। कुछ दिनों बाद चलना, जैसा कि ऊपर के चरण सुझाते हैं, रिफ्रेश को लैंड होने का समय देता है।
हर महीने एक ही दिन चुनें ताकि सीरीज तुलनीय रहे, और उस दिन को क्रॉन लाइन पर एक कमेंट में लिखें।
ऑटोमेट करना कब बंद करें
एक जॉब जो एक तिमाही में एक बार चलती है, उसके लिए एक क्रॉन लाइन जरूरी नहीं हो सकती। एक शीट और एक कैलेंडर रिमाइंडर काफी हो सकता है, और एक आधा-ऑटोमेटेड रूटीन एक स्पष्ट मैनुअल रूटीन से बुरा है।
तब तक ऑटोमेट करें जब तक कि समान चरण कई चक्रों तक साफ़ नहीं चल गए हों।