我正试图将数据从api拉入空列表,并将其转换为数据帧。我使用了一个try,除了api也会返回null值的情况外,但仍然会出现这个错误。这是我的代码:(我编写了一个名为get_data
的函数,从API:中获取我所需的数据点
d = []
base_url = "api url inserted here"
for i in range(len(df)):
try:
address = base_url + df.loc[i,"column_for_api_call"]
d.append(get_data(address))
except (IndexError, TypeError) as error:
print('ERROR at index {}: {!r}'.format(i, address))
d.append([" "])
lat = pd.DataFrame(d)
但是在整个代码运行之后,继续获取错误TypeError: object of type 'NoneType' has no len()
。我错过了什么?
df
是None
,因此永远不会进入for循环。您应该指定在这种情况下应该发生什么:
if df is None:
pass # FIXME: what should happen here?
else:
for i in range(len(df):
address = base_url + df.loc[i,"column_for_api_call"]
d.append(get_data(address))