加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – 有什么方法可以让PyDrive记住用户的身份验证吗?

发布时间:2020-12-20 13:11:46 所属栏目:Python 来源:网络整理
导读:我使用 Python和PyDrive制作了一个程序. 该程序捕获图像并将其上传到Google云端硬盘上的文件夹. 这是我的身份验证和上传的基本代码: gauth = GoogleAuth()drive = GoogleDrive(gauth)file_image = drive.CreateFile({"parents": [{"kind": "drive#fileLink"
我使用 Python和PyDrive制作了一个程序.
该程序捕获图像并将其上传到Google云端硬盘上的文件夹.
这是我的身份验证和上传的基本代码:

gauth = GoogleAuth()
drive = GoogleDrive(gauth)
file_image = drive.CreateFile({"parents":  [{"kind": "drive#fileLink","id": upload_folder_id}]})
file_image.SetContentFile(imageName) #Set the content to the taken image
file_image.Upload() # Upload it

任何时候我运行该程序它想要验证我.有没有办法记住身份验证?

解决方法

在Google云端硬盘的网络界面中,Cookie用于记住身份验证.我建议您从配置文件中读取登录信息,并在每次使用脚本时登录.您可以使用eval(),但请记住,eval()是邪恶的:)(如果脚本仅供您使用,则可以).

样品:

在脚本所在的同一文件夹中创建一个名为login.conf(或类似文件)的文件.将其放入其中:

{"user": "username","pass": "password"}

将“username”和“pasword”替换为您的真实值,但保留“.”在您的脚本中,执行以下操作:

with open("login.conf","r") as f:
    content = eval(f.read())

username = content["user"]
password = content["pass"]

# Now do login using these two variables

更安全的选择是使用ConfigParser(Python 3.x中的configparser).

编辑:

登录到Google云端硬盘需要在脚本目录中使用名为client_secrets.json的文件.如果你有,请像这样登录:

gauth = GoogleAuth()
gauth.LocalWebserverAuth()

gauth.LoadCredentialsFile("credentials.txt")
if gauth.credentials is None:
    gauth.LocalWebserverAuth()
elif gauth.access_token_expired:
    gauth.Refresh()
else:
    gauth.Authorize()

gauth.SaveCredentialsFile("credentials.txt")

drive = GoogleDrive(gauth)

希望这有帮助(问,如果事情不够清楚)!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读