python爬取基金历史净值
时间: 2023-10-22 07:04:40 浏览: 164
要使用Python爬取基金历史净值,你可以使用第三方库如requests、BeautifulSoup和pandas来实现。下面是一个简单的示例代码,演示了如何爬取基金历史净值并保存为CSV文件:
```python
import requests
from bs4 import BeautifulSoup
import pandas as pd
# 获取基金历史净值页面的HTML内容
url = 'http://fund.eastmoney.com/f10/F10DataApi.aspx?type=lsjz&code=基金代码&page=页码&per=每页数量'
# 替换为你要爬取的基金代码
fund_code = '基金代码'
# 替换为你要爬取的总页数
total_pages = 总页数
data = []
for page in range(1, total_pages+1):
# 构造URL
page_url = url.replace('基金代码', fund_code).replace('页码', str(page)).replace('每页数量', '20')
# 发送请求并获取响应
response = requests.get(page_url)
# 解析HTML
soup = BeautifulSoup(response.text, 'html.parser')
# 获取历史净值表格
table = soup.find('table', class_='w782')
# 遍历表格行
for row in table.find_all('tr')[1:]:
# 提取每列数据
columns = row.find_all('td')
date = columns[0].text.strip()
value = float(columns[1].text.strip())
# 添加到数据列表
data.append([date, value])
# 将数据转换为DataFrame
df = pd.DataFrame(data, columns=['日期', '净值'])
# 保存为CSV文件
df.to_csv('fund_history.csv', index=False)
print('数据已保存为fund_history.csv文件')
```
阅读全文