前提・実現したいこと
Google apiの一つであるAdWords apiをmacのpython3.6で利用したいと考えております。 以下のコードで、キーワードの検索ボリュームを参照したいのですが、エラーが出てしまいうまくいきません。 原因のわかる方教えて頂けないでしょうか。 googleads.yamlは、ホームディレクトリに配置し、下記の情報を記載してあります。 ・developer_token ・client_customer_id ・user_agent ・client_id ・client_secret ・refresh_token
発生している問題・エラーメッセージ
File "/Users/ユーザー名/.pyenv/versions/anaconda3-5.0.0/lib/python3.6/imp.py", line 270, in find_module "not {}".format(type(path))) RuntimeError: 'path' must be None or a list, not <class '_frozen_importlib_external._NamespacePath'>
該当のソースコード
from googleads import adwords PAGE_SIZE = 100 offset = 0 def main(client, keywords): targeting_idea_service = client.GetService('TargetingIdeaService', version='v201809') selector = { 'searchParameters':[ { 'xsi_type':'RelatedToQuerySearchParameter', 'queries':keywords }, { 'xsi_type': 'LanguageSearchParameter', 'languages': [{'id': '1005'}] }, { 'xsi_type': 'NetworkSearchParameter', 'networkSetting':{ 'targetGoogleSearch':True, 'targetSearchNetwork':False, 'targetContentNetwork':False, 'targetPartnerSearchNetwork':False } } ], 'ideaType':'KEYWORD', 'requestType':'STATS', 'requestedAttributeTypes':[ 'TARGETED_MONTHLY_SEARCHES' ], 'paging':{ 'startIndex':str(offset), 'numberResults':str(PAGE_SIZE) } } page = targeting_idea_service.get(selector) if 'entries' in page: for result in page['entries']: attributes = {} for attributes in result['data']: attributes[attributes['key']] = getattr(attributes['value'], 'value', 0) print(attributes['TARGETED_MONTHLY_SEARCHES']) else: print('No keywords volume were found.') if __name__ == '__main__': adwords_client = adwords.AdWordsClient.LoadFromStorage() keywords = ['テスト'] main(adwords_client, keywords)
試したこと
googleads,yamlの配置を変えてみたが変わらずエラーが出ます。
補足情報(FW/ツールのバージョンなど)
python3.6
あなたの回答
tips
プレビュー