-1
私はbeautifulsoup4を使用して在庫データを取得し、Pythonでスプレッドシートに送信しています。私が抱えている問題は、Noneを返す属性をスキップするループを得ることができないということです。だから私が必要としているのは、 属性が返されない行にnull値を追加するコードです。Pythonハンドル 'NoneType'オブジェクトには、else文との 'find_all'エラーがありません
//my dictionay for storing data
data = {
'Fiscal Quarter End' : [],
'Date Reported' : [],
'Earnings Per Share' : [],
'Consensus EPS* Forecast' : [],
'% Surprise' : []
}
url = ""
html = requests.get(url)
data = html.text
soup = bs4.BeautifulSoup(data)
table = soup.find("div", class_="genTable")
for row in table.find_all('tr')[1:]:
if row.has_attr('tr'):
cols = row.find_all("td")
data['Fiscal Quarter End'].append(cols[0].get_text())
data['Date Reported'].append(cols[1].get_text())
data['Earnings Per Share'].append(cols[2].get_text())
data['Consensus EPS* Forecast'].append(cols[3].get_text())
data['% Surprise'].append(cols[4].get_text())
else:
//where i need to add in the empty 'n/a' values
data['Fiscal Quarter End'].append()
data['Date Reported'].append()
data['Earnings Per Share'].append()
data['Consensus EPS* Forecast'].append()
data['% Surprise'].append()
'//' ...あなたが定義している – brianpck
Pythonでのコメントではありませんdataという名前の辞書を作成し、html.textをデータに割り当て、次にデータを辞書にすることを期待しています。 – saq7
最初にデータ変数を辞書として使用しており、HTMLテキストを格納する文字列としても使用します。これは間違いなくあなたに問題を引き起こすでしょう。また、なぜ空のデータを追加する必要があるのかを明確にすることはできますか? –