可以使用GSPREAD GOOGLE COLAB将文件创建到特定文件夹中

发布于 2025-02-11 12:00:59 字数 1552 浏览 1 评论 0原文

昨天,我仍然能够使用此代码使用GSPREAD将Google Sheet Files创建:

ss = gc.create(文件名,“我的文件夹目标”)

但今天,此代码会产生错误。

这是我的完整代码:

from google.colab import auth
auth.authenticate_user()

import pandas as pd

import gspread
from google.auth import default
creds, _ = default()

gc = gspread.authorize(creds)

wb = gc.open('file name')
ws = wb.worksheet('sheet name')

# get_all_values gives a list of rows.
rows = ws.get_all_values()
df = pd.DataFrame.from_records(rows[1:],columns=rows[0])

modisseries = df["column name"]
uniquemodis = modisseries.drop_duplicates().tolist()

def createSpreadsheet(columName):
  ndf = df[df["Modis"] == Columname]
  nlist = [ndf.columns.tolist()] + ndf.to_numpy().tolist()
  ss = gc.create(columnName,"Folder_id")
  nws = ss.sheet1
  nws.update_title(columnName)
  nws.update("A1",nlist,value_input_option="USER_ENTERED")

for modis in uniquemodis:
  createSpreadsheet(modis)

这是错误消息:

TypeError                                 Traceback (most recent call last)
<ipython-input-1-5c297289782b> in <module>()
     30 
     31 for column_value in uniquecolumn:
---> 32   createSpreadsheet(column_value)

<ipython-input-1-5c297289782b> in createSpreadsheet(column_value)
     24   nlist = [ndf.columns.tolist()] + ndf.to_numpy().tolist()
     25 
---> 26   ss = gc.create(column_value,"folder_id")
     27   nws = ss.sheet1
     28   nws.update_title(column_value)

TypeError: create() takes 2 positional arguments but 3 were given

Yesterday I was still able to create a google sheet files using gspread into a specific folder using this code:

ss = gc.create(fileName,"my folder destination")

But today, this code yields an error.

Here is my full code:

from google.colab import auth
auth.authenticate_user()

import pandas as pd

import gspread
from google.auth import default
creds, _ = default()

gc = gspread.authorize(creds)

wb = gc.open('file name')
ws = wb.worksheet('sheet name')

# get_all_values gives a list of rows.
rows = ws.get_all_values()
df = pd.DataFrame.from_records(rows[1:],columns=rows[0])

modisseries = df["column name"]
uniquemodis = modisseries.drop_duplicates().tolist()

def createSpreadsheet(columName):
  ndf = df[df["Modis"] == Columname]
  nlist = [ndf.columns.tolist()] + ndf.to_numpy().tolist()
  ss = gc.create(columnName,"Folder_id")
  nws = ss.sheet1
  nws.update_title(columnName)
  nws.update("A1",nlist,value_input_option="USER_ENTERED")

for modis in uniquemodis:
  createSpreadsheet(modis)

And here is the error message:

TypeError                                 Traceback (most recent call last)
<ipython-input-1-5c297289782b> in <module>()
     30 
     31 for column_value in uniquecolumn:
---> 32   createSpreadsheet(column_value)

<ipython-input-1-5c297289782b> in createSpreadsheet(column_value)
     24   nlist = [ndf.columns.tolist()] + ndf.to_numpy().tolist()
     25 
---> 26   ss = gc.create(column_value,"folder_id")
     27   nws = ss.sheet1
     28   nws.update_title(column_value)

TypeError: create() takes 2 positional arguments but 3 were given

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

九歌凝 2025-02-18 12:00:59

嗨,您使用哪个版本的gspread
参数folder_id已在版本3.5.0中

从错误消息中介绍,您似乎有一个旧版本,并且无法处理 new parameter folder_id

您可以通过使用以下方式检查当前正在使用的版本:print(gspread .__版本__)

如果这是Bellow版本3.5.0,则运行以下命令:
Python3 -M Pip install -U gspread

Hi which version of gspread do you use ?
The parameter folder_id has been introduced in version 3.5.0

From the error message you get it seems you have an old version and it does not handle the new parameter folder_id.

You can check the version you are currently using by using: print(gspread.__version__)

If this is bellow version 3.5.0 then run the following command:
python3 -m pip install -U gspread

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文