在 Colab Notebook 中使用 Admanager Python API
Using Admanager Python API within a Colab Notebook
我正在尝试让 Google AdManager API 在 Colab 笔记本中工作。
按照说明 here 我已经成功创建了自己的配置 YAML 文件,将其上传到 Colab 笔记本并执行了对 NetworkService
服务的基本调用。一切顺利并按预期运行,返回预期的网络名称和 ID。
然后我尝试添加更多请求,例如 this,但我收到此错误消息:
FileNotFoundError Traceback (most recent call last)
/usr/local/lib/python3.6/dist-packages/googleads/common.py in LoadFromStorage(path, product_yaml_key, required_client_values, optional_product_values)
279 try:
--> 280 with open(path, 'rb') as handle:
281 yaml_doc = handle.read()
FileNotFoundError: [Errno 2] No such file or directory: '/root/googleads.yaml',
During handling of the above exception, another exception occurred:
GoogleAdsValueError Traceback (most recent call last)
<ipython-input-14-ed9b34dcaa81> in <module>()
25 if __name__ == '__main__':
26 # Initialize client object.
---> 27 ad_manager_client = ad_manager.AdManagerClient.LoadFromStorage()
28 main(ad_manager_client)
/usr/local/lib/python3.6/dist-packages/googleads/ad_manager.py in LoadFromStorage(cls, path)
202 return cls(**googleads.common.LoadFromStorage(
203 path, cls._YAML_KEY, cls._REQUIRED_INIT_VALUES,
--> 204 cls._OPTIONAL_INIT_VALUES))
205
206 def __init__(self, oauth2_client, application_name, network_code=None,
/usr/local/lib/python3.6/dist-packages/googleads/common.py in LoadFromStorage(path, product_yaml_key, required_client_values, optional_product_values)
282 except IOError:
283 raise googleads.errors.GoogleAdsValueError(
--> 284 'Given yaml file, %s, could not be opened.' % path)
285
286 try:
GoogleAdsValueError: Given yaml file, /root/googleads.yaml, could not be opened.
尽管在笔记本 (content/googleads.yaml
) 文件夹中上传的相同 yaml 文件与第一个请求完美配合。
感谢任何帮助。
谢谢!
PS:只是想让你知道,我还处于 Python 的婴儿期。
如果您附上一个最小的重现笔记本,显示哪些有效,哪些无效,那会更容易为您提供帮助。
不过,在黑暗中猜测:起作用的东西有额外的代码,可以在当前目录中查找 YAML 文件,而不起作用的东西则没有。
最简单的修复可能是创建一个符号链接,如:
!ln -s /content/googleads.yaml /root/googleads.yaml
我正在尝试让 Google AdManager API 在 Colab 笔记本中工作。
按照说明 here 我已经成功创建了自己的配置 YAML 文件,将其上传到 Colab 笔记本并执行了对 NetworkService
服务的基本调用。一切顺利并按预期运行,返回预期的网络名称和 ID。
然后我尝试添加更多请求,例如 this,但我收到此错误消息:
FileNotFoundError Traceback (most recent call last)
/usr/local/lib/python3.6/dist-packages/googleads/common.py in LoadFromStorage(path, product_yaml_key, required_client_values, optional_product_values)
279 try:
--> 280 with open(path, 'rb') as handle:
281 yaml_doc = handle.read()
FileNotFoundError: [Errno 2] No such file or directory: '/root/googleads.yaml',
During handling of the above exception, another exception occurred:
GoogleAdsValueError Traceback (most recent call last)
<ipython-input-14-ed9b34dcaa81> in <module>()
25 if __name__ == '__main__':
26 # Initialize client object.
---> 27 ad_manager_client = ad_manager.AdManagerClient.LoadFromStorage()
28 main(ad_manager_client)
/usr/local/lib/python3.6/dist-packages/googleads/ad_manager.py in LoadFromStorage(cls, path)
202 return cls(**googleads.common.LoadFromStorage(
203 path, cls._YAML_KEY, cls._REQUIRED_INIT_VALUES,
--> 204 cls._OPTIONAL_INIT_VALUES))
205
206 def __init__(self, oauth2_client, application_name, network_code=None,
/usr/local/lib/python3.6/dist-packages/googleads/common.py in LoadFromStorage(path, product_yaml_key, required_client_values, optional_product_values)
282 except IOError:
283 raise googleads.errors.GoogleAdsValueError(
--> 284 'Given yaml file, %s, could not be opened.' % path)
285
286 try:
GoogleAdsValueError: Given yaml file, /root/googleads.yaml, could not be opened.
尽管在笔记本 (content/googleads.yaml
) 文件夹中上传的相同 yaml 文件与第一个请求完美配合。
感谢任何帮助。
谢谢!
PS:只是想让你知道,我还处于 Python 的婴儿期。
如果您附上一个最小的重现笔记本,显示哪些有效,哪些无效,那会更容易为您提供帮助。 不过,在黑暗中猜测:起作用的东西有额外的代码,可以在当前目录中查找 YAML 文件,而不起作用的东西则没有。 最简单的修复可能是创建一个符号链接,如:
!ln -s /content/googleads.yaml /root/googleads.yaml