11

मेरे पास एक सार्वजनिक (प्रकाशित) Google स्प्रेडशीट है जिसे मैं टीएसवी रूप में प्रोग्रामेटिक रूप से डाउनलोड करने का प्रयास कर रहा हूं।कमांड लाइन से टीएसवी के रूप में सार्वजनिक Google स्प्रेडशीट डाउनलोड/निर्यात करें?

कुछ ब्राउज़र की सक्रिय कुंजी के साथ, कुछ वास्तविक कुंजी $key, https://spreadsheets.google.com/feeds/download/spreadsheets/Export?key=$key&exportFormat=tsv काम करता है और एक टीएसवी फ़ाइल बनाता है।

मेरी खोल में, हालांकि:

  • curl -L "https://spreadsheets.google.com/feeds/download/spreadsheets/Export?key=$key&exportFormat=tsv" जावास्क्रिप्ट का एक समूह पैदा करता है।
  • curl -L "https://spreadsheets.google.com/feeds/download/spreadsheets/Export?key=$key&exportFormat=csv" भी जावास्क्रिप्ट का एक गुच्छा पैदा करता है।
  • curl -L "https://docs.google.com/spreadsheet/pub?key=$key&single=true&gid=0&output=csv" काम करता है और एक CSV फ़ाइल बनाता है।
  • curl -L "https://docs.google.com/spreadsheet/pub?key=$key&single=true&gid=0&output=tsv" एक त्रुटि संदेश उत्पन्न करता है।

(wget इसी तरह के परिणाम का उत्पादन उपयोग करने के लिए प्रयास।)

मैं इस काम कैसे कर सकता हूँ? सभी Google दस्तावेज जिन्हें मैं अब तक ढूंढने में सक्षम हूं, एक सरल डाउनलोड और प्रारूप परिवर्तन की तुलना में अधिक जटिल समस्याओं की दिशा में तैयार है, और यदि मेरी समस्या का हल कहीं कहीं है, तो मैं इसे अभी तक नहीं ढूंढ पाया ।

+0

एक प्रमाणीकरण मुद्दे की तरह लग रहा। अपने Google खाते से लॉग आउट करने का प्रयास करें? (अजीब है कि सीएसवी काम करता है और टीएसवी विफल रहता है।) – eddyparkinson

उत्तर

0

निजी फ़ाइलों को OAuth प्राधिकरण प्रमाण-पत्रों को डाउनलोड करने की आवश्यकता होती है। आप Google ड्राइव API की Download Files मार्गदर्शिका पर प्रक्रिया के बारे में और अधिक पढ़ सकते हैं।

+0

यह एक निजी फ़ाइल नहीं है। –

18

मुझे यह निराशाजनक रूप से अनियंत्रित पाया गया। मुझे यकीन है कि यह कहीं भी दस्तावेज है ... लेकिन मुझे यह कभी नहीं मिला।

आधार यह है कि आपकी Google शीट सार्वजनिक रूप से प्रकाशित की गई है। यह कई लोगों के लिए सहज नहीं है। (फ़ाइल चुनें -> वेब पर प्रकाशित ...)

जब आप एक पत्रक प्रकाशित करते हैं, आप कॉपी करना एक ऐसा URL दिए गए हैं: https://docs.google.com/spreadsheets/d/1XsfK2TN418FuEstNGG2eI9FmEV-4eY-FnndigHWIhk4/pubhtml

यूआरएल अच्छी तरह से ब्राउज़ करने योग्य है कि ... लेकिन यह नहीं है डाउनलोड करने योग्य सीएसवी मैं चाहता था। खोज और परीक्षण और त्रुटि की एक लंबी संयोजन के माध्यम से मैं इस के साथ आया था:

curl "https://docs.google.com/spreadsheets/d/1XsfK2TN418FuEstNGG2eI9FmEV-4eY-FnndigHWIhk4/export?gid=0&format=csv"

मैं इसे काफी सहायक हो सकते हैं। मुझे आशा है कि कोई भी आधिकारिक दस्तावेज़ों के लिंक के साथ अधिक विस्तार से बताएगा।

+0

किसी भी तरह, अगर मैं 'gid = 0' शामिल करता हूं तो मुझे एक पृष्ठ मिल जाएगा त्रुटि नहीं मिलेगी, लेकिन अगर मैं इसे शामिल नहीं करता तो मुझे परिणाम के रूप में परिणाम मिलता है –

0

मेरा उत्तर उत्तर कैसे प्राप्त करें इस बारे में है।

क्रोम ब्राउज़र में, Google दस्तावेज़ पर नेविगेट करें।

ब्राउज़र के ऊपरी दाएं कोने में, तीन dots-> अधिक उपकरण> डेवलपर उपकरण

करने के लिए जाना यह एचटीएमएल लाएगा ... डिबगर।

डीबगर विंडो के शीर्ष पर, नेटवर्क का चयन करें।

अब अपने दस्तावेज़ में, डाउनलोड को शुरू करें क्योंकि आप स्वचालित करने का प्रयास कर रहे हैं।

डीबगर में, यह आपको बनाए गए किसी भी वेब अनुरोध दिखाएगा।पहला नया शायद आप जो चाहते हैं।

आप क्लिक- सही करने के लिए> copy-> प्रतिलिपि लिंक का पता

यूआरएल एक ID शामिल सक्षम होना चाहिए। मुझे नहीं पता कि यह क्या है, लेकिन कर्ल बिना दस्तावेज़ डाउनलोड करने में सक्षम था।

आशा है कि यह सहायक होगा।

3

मैं इस तरह से खोल के माध्यम से डाउनलोड कर सकते हैं: वेब

  • पर प्रकाशित

    1. फ़ाइल => एक शीट और प्रारूप चुनें डाउनलोड करना चाहते है। पर
    2. लिंक कॉपी
    3. प्रकाशित करें और फिर इसका इस्तेमाल

    4. क्लिक करें:

      wget -O ./filename.csv "LINK" 
      

      या

      curl -L "LINK" > ./filename.csv 
      

    मेरे मामले में यह अपेक्षा के अनुरूप काम किया।

    प्लस मुझे लगता है कि यह सभी स्वरूपों को प्रकाशित तो तुम क्या बिना यूआरएल के अंतिम भाग को बदलने डाउनलोड करने के लिए चुन सकते हैं अप्रकाशित और यह फिर से प्रकाशित:

    output=tsv 
    output=csv 
    
  • संबंधित मुद्दे