如何将抓取的 Web 数据保存到多个 csv 文件中

Posted

技术标签:

【中文标题】如何将抓取的 Web 数据保存到多个 csv 文件中【英文标题】:How to save scraped web data into multiple csv files 【发布时间】:2020-11-04 22:33:55 【问题描述】:

我要去雅虎财经并提取股票代码中股票代码的历史数据。 这是在 pandas df 中返回的。

我的问题是我将如何进行,将每个代码数据保存到它们自己的 csv 文件中。

tickers = ["MUV2.DE", "DTE.DE", "VNA.DE", "ALV.DE", "BAYN.DE", "EOAN.DE", "RWE.DE", "CON.DE", "HEN3.DE", "BAS.DE", "FME.DE", "WDI.DE", "IFX.DE", "SAP.DE", "BMW.DE", "DPW.DE", "DB1.DE", "DAI.DE", "BEI.DE", "SIE.DE", "ADS.DE", "DBK.DE", "FRE.DE", "HEI.DE", "MRK.DE", "LHA.DE", "VOW3.DE", "1COV.DE", "LIN.DE", "TKA.DE"]

start = datetime.datetime(2012,5,31)
end = datetime.datetime(2020,3,1)

df = pdr.get_data_yahoo(tickers, start=start, end=end)

我想我需要一个 for 循环来将每个循环写入 csv。但是,我不确定我在导入的哪个阶段编写了这个 for 循环。

我是说...对于tickers中的每个ticker去yahoo获取数据然后将其保存到csv中还是我说去yahoo获取数据然后对于df循环中的每个ticker通过并写入csv?

【问题讨论】:

【参考方案1】:

我找到了解决办法:

tickers = ["MUV2.DE","DTE.DE", "VNA.DE", "ALV.DE", "BAYN.DE", "EOAN.DE", "RWE.DE", "CON.DE", "HEN3.DE", "BAS.DE", "FME.DE", "WDI.DE", "IFX.DE", "SAP.DE", "BMW.DE", "DPW.DE", "DB1.DE", "DAI.DE", "BEI.DE", "SIE.DE", "ADS.DE", "DBK.DE", "FRE.DE", "HEI.DE", "MRK.DE", "LHA.DE", "VOW3.DE", "1COV.DE", "LIN.DE", "TKA.DE"]
start = datetime.datetime(2012,5,31)
end = datetime.datetime(2020,3,1)


for ticker in tickers:
    df = pdr.get_data_yahoo(ticker, start=start, end=end)
    df.to_csv(f"ticker.csv")

【讨论】:

以上是关于如何将抓取的 Web 数据保存到多个 csv 文件中的主要内容,如果未能解决你的问题,请参考以下文章

使用循环进行 Web 抓取并写入 csv

python web抓取并将数据写入csv

使用来自同一 URL 的多个 POST 数据进行抓取

python web抓取数据到csv

如何使用python将多个抓取的数据保存到mysql

抓取的网站数据未写入 CSV