Google App Engine批量下载

问题描述 投票:5回答:2

我使用批量下载从数据存储区下载数据(超过1 GB)。 突然,我的互联网停止工作,下载过程停在中间。 我想从它停止的地方恢复。 当我尝试时,我收到以下错误

File "/Users/FYP/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/api/datastore_types.py", line 156, in ValidateString
    (name, value, typename(value)))
BadArgumentError: kind should be a string; received 3 (a int):
[INFO    ] [WorkerThread-2] Backing off due to errors: 1.0 seconds
[INFO    ] An error occurred. Shutting down...
[ERROR   ] Error in WorkerThread-0: kind should be a string; received 3 (a int):

这是我下载数​​据的代码

appcfg.py download_data --config_file=bulkloader.yaml --batch_size=200 --filename=final80_2.csv 
--kind=TasksTime1 --url=http://abc.appspot.com/_ah/remote_api --rps_limit=40 
--db_filename=bulkloader-progress-20110429.141103 --result_db_filename=bulkloader-results-20110429.141103

如何解决问题?

python google-app-engine download bulk
2个回答
1
投票

只需重新运行相同的命令。 根据文档

如果传输中断,您可以使用--db_filename = ...参数从中断处继续传输。 该值是工具创建的进度文件的名称,该名称是您在开始传输时使用--db_filename参数提供的名称,或者是包含时间戳的默认名称。 这假设您已安装sqlite3,并且未使用--db_filename = skip禁用进度文件。

您在第一次执行时指定了db_filename ,因此如果您重新运行该命令,它应该找到现有文件并从中断处继续。


0
投票

我有同样的问题:

Error in WorkerThread-0: kind should be a string; received 3 (a int)

删除所有* .sql3和* .csv文件会停止发生此错误。 显然,是的,恢复已被破坏,但如果您希望能够再次批量下载,则必须禁用它。

当然,我们通常将bulkloader命令包装在函数中以预先清理这些文件。

© www.soinside.com 2019 - 2024. All rights reserved.