मेरे पास डेटा के साथ एक Google शीट है, लेकिन इसमें प्रतिदिन एक समस्या है मुझे डेटा (उसी प्रकार का डेटा) डालना है, कोई जानता है कि पाइथन का उपयोग करके Google शीट में डेटा कैसे जोड़ना है, मेरी मदद करें।

मेरे पास उस प्रकार का परिणाम है और वह स्ट्रिंग में है

print(time, " ", todayMaxProfit, " ", todayMaxLoss, " ", pl, " ", len(
orderList), " First pair sum:- ", int(orderList[0][4]+orderList[1][4]))

"2021-08-18 15:00:00  [1451, '2021-08-18 11:07:00']  [-10203, '2021-08-18 14:45:00']  -6900  2  First pair sum:-  234"

मैं अंत में डेटा जोड़ना चाहता हूं।

enter image description here

1
Brijesh Kalkani 20 अगस्त 2021, 11:47

2 जवाब

सबसे बढ़िया उत्तर

पायथन के साथ Google स्प्रेडशीट में मान कैसे जोड़ें।

  1. सेट अप करने के लिए त्वरित प्रारंभ का अनुसरण करें। सुनिश्चित करें कि आप सभी चरणों का ठीक से पालन करते हैं! आपको एपीआई का उपयोग करने वाले प्रत्येक प्रोजेक्ट के लिए ऐसा करने की आवश्यकता होगी ताकि आप यहां दिए गए निर्देशों का भी पालन कर सकें। सुनिश्चित करें कि आगे बढ़ने से पहले आपको अपेक्षित आउटपुट मिले!

  2. फिर आप service को एक अलग फ़ंक्शन प्राप्त करने के लिए क्विकस्टार्ट को संशोधित कर सकते हैं:

def getService():
    creds = None
    if os.path.exists('token.json'):
        creds = Credentials.from_authorized_user_file('token.json', SCOPES)
    if not creds or not creds.valid:
        if creds and creds.expired and creds.refresh_token:
            creds.refresh(Request())
        else:
            flow = InstalledAppFlow.from_client_secrets_file(
                'credentials.json', SCOPES)
            creds = flow.run_local_server(port=0)
        with open('token.json', 'w') as token:
            token.write(creds.to_json())

    return build('sheets', 'v4', credentials=creds)
  1. एक बार आपके पास सेवा हो जाने के बाद, आप पत्रक एपीआई पर कॉल कर सकते हैं। उदाहरण के लिए:
service = getService()
appendValues(service)
            
values = [
    [time, todayMaxProfit, todayMaxLoss, pl, len(orderList), int(orderList[0][4]+orderList[1][4])]
]
    
body = {'values': values}
result = service.spreadsheets().values().append(
    spreadsheetId="13rdolwpUD4h4RTuEgn1QbtgPMpJiZGMFubdh4loAfNQ", range="Sheet1!A1",
    valueInputOption="RAW", body=body).execute()

ध्यान दें कि जिस प्रारूप में values होना चाहिए वह एक द्वि-आयामी सूची है।

[
    [A1, B1, C1],
    [A2, B2, C2]
]

append तरीके का इस्तेमाल करना , बस पंक्ति को जोड़ देगा, जैसा कि शीट के अंत में है। append कुछ तर्क देता है:

  • स्प्रेडशीट आईडी - स्प्रैडशीट का id जिसमें आप मान जोड़ना चाहते हैं
  • रेंज - रफ रेंज जहां डेटा पाया जाता है। शीट्स एपीआई शीट में डेटा का मूल्यांकन करने का प्रयास करेगा और अनुमान लगाएगा कि अंतिम पंक्ति कहां है। आमतौर पर, यदि आपके पास केवल A1 से नीचे तक डेटा से भरी एक तालिका है, तो आप इसे केवल A1, या शायद C5 के रूप में छोड़ सकते हैं, यदि आपके पास शीर्षलेख या रिक्त स्थान हैं। विचार यह है कि एपीआई को उस डेटा के संग्रह की ओर इंगित किया जाए जिसे आप जोड़ना चाहते हैं।
  • valueInputOption - इसे आमतौर पर "रॉ" के रूप में छोड़ा जा सकता है जो डेटा को पास होने पर ही सम्मिलित करता है।
  • शरीर, जहां आपके पास डेटा की दो आयामी सूची है।

संदर्भ

4
iansedano 23 अगस्त 2021, 14:49

हैलो, आप pygsheets आज़मा सकते हैं, यह अच्छा काम करता है और उपयोग में आसान है।

import pygsheets
gc = pygsheets.authorize(service_file='creds.json')
sh = gc.open('sheetname')  # Open GoogleSheet
worksheet1 = sh.worksheet('title', 'worksheetname')  # choose worksheet to work with
worksheed1.append_table(values=["Date", "blah", 1, '\'+', "ect"])  # append row to worksheet
0
Miro Romic 28 अगस्त 2021, 16:12