0
我想獲得一些變量的結果,並將其插入到數據幀的大熊貓。我從Google的Merchant API獲取一些數據,並且我想將它們寫入一個pandas DataFrame。 起初我執行的API的調用,然後使用而...繼續重申了循環,並採取下一個頁面的結果。Python的循環進出高清不會有同樣的結果
from apiclient.discovery import build
from oauth2client.service_account import ServiceAccountCredentials
import httplib2
import pandas as pd
def get_products(merchant_id):
request = service.products().list(merchantId=merchant_id,
maxResults=250)
while request is not None:
result = request.execute()
for product in result['resources']:
product_id = product['id']
availability = product['availability']
category = product['productType'].split('>')
category = category[0]
return product_id,availability,category
request = service.products().list_next(request, result)
continue
if __name__ == '__main__':
result = get_products('yyyy')
print result
data = {'product_id': result[0], 'availability': result[1], 'category': result[2]}
products_df = pd.DataFrame(data,index=[0])
print products_df
然而,在我的輸出數據幀我只得到一個由於某種原因,行..
(u'online:CH:480089', u'in stock', u'Spielzeug ')
當我在定義函數我有成千上萬行的測試。
你看到我的邏輯有點問題?
'因爲你已經用它continue'沒有做任何事情。默認是繼續。 – TemporalWolf
你正在循環中返回。因此,函數一旦到達'return'就會停止,它返回單個'product_id,可用性,類別'元組。你可能想積累一些東西,像'list',並返回* –