擅长:python、mysql、java
<p>每次循环时都会覆盖csv。应收集所有数据,并在循环后将其写入csv:</p>
<pre><code>stocklist = ['aapl','goog','fb','amzn','COP']
columns = []
data = []
for s in stocklist:
optionsUrl = urllib.request.urlopen('http://finance.yahoo.com/q?s='+s).read()
soup = BeautifulSoup(optionsUrl, "html.parser")
stocksymbol = ['Symbol:', s]
optionsTable = [stocksymbol]+[
[x.text for x in y.parent.contents]
for y in soup.findAll('td', attrs={'class': 'yfnc_tabledata1','rtq_table': ''})
]
if not columns:
columns = [o[0] for o in optionsTable]
data.append(o[1] for o in optionsTable)
# create DataFrame from data
df = pd.DataFrame(data, columns=columns)
df.to_csv('test.csv', index=False)
</code></pre>