首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >谷歌云数据存储Python3 AttributeError on include

谷歌云数据存储Python3 AttributeError on include
EN

Stack Overflow用户
提问于 2020-09-27 05:42:56
回答 1查看 131关注 0票数 0

我写了一个python3爬虫,我已经跑了很多次了。现在我想添加google云数据存储功能(从数据存储读取/写入)。我按照谷歌文档页面上的说明进行了操作。然而,当我在我的脚本中包含这个库时,甚至没有调用一个函数,(只包含它会导致这种情况),我得到以下错误:

AttributeError:模块'google.protobuf.descriptor‘没有特性'_internal_create_key’

我在Stackoverflow和online上进行了搜索,得到的建议是升级google protobuf包的安装(如下所示:)

How to solve "AttributeError: module 'google.protobuf.descriptor' has no attribute '_internal_create_key"?

我尝试了上面列出的步骤,但没有成功。我仍然得到相同的错误。请记住,我尝试升级protobuf时使用的是pip (pip3)的python3版本。它说它已经是最新的,并说我使用的是3.13.0版本。正在加载的python版本为3.8.2。但是,其他人将protoc --version列为要运行的命令,但在我运行时,该协议没有安装,也找不到该命令。请记住,关于protobuf的正确和工作版本是3.13.0,有很多评论,pip3已经说我有了。我附上了一个调用堆栈的截图,以防它对某人有什么意义。

编辑:我刚刚尝试过的一件事是,我运行了python3交互式外壳程序,并输入"from google.cloud import datastore",它没有出现任何错误。这可能是问题所在的线索吗?另外,当我发出命令pip3 install --upgrade google-cloud-datastore时,它说所有的要求都已经满足了,包括google protobuf >= 3.12.0,这是正确的,因为它的3.13.0。但是,问题仍然存在。

Edit2:我还创建了一个windows10vm,其中的include在python3/anaconda上运行得很好。如果是这样的话,我可能最终只会在vm中进行开发。在我的ubuntu机器上肯定有一些旧的协议文件或依赖项是陈旧的/错误的。

EN

回答 1

Stack Overflow用户

发布于 2020-10-07 07:30:04

这个问题在几天后神奇地解决了。正如之前的评论者所说,这似乎是一个缓存问题,缓存被清理了,现在抓取的网络爬虫工作得很好。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64082781

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档