import requests import json import csv url = 'https://vip.stock.finance.sina.com.cn/quotes_service/api/json_v2.php/Market_Center.getHQNodeData?page={}&num=40&sort=symbol&asc=1&node=hs_bjs&symbol=&_s_r_a=init' # 创建CSV文件 csv_file = open('stocks.csv', 'w', newline='') writer = csv.writer(csv_file) writer.writerow(['股票代码', '股票名称', '当前价格', '涨跌幅']) for i in range(1, 6): # 构造请求URL req_url = url.format(i) # 发送HTTP请求 response = requests.get(req_url) # 解析响应内容 stock_list = json.loads(response.text) for stock_info in stock_list: # 提取所需数据 symbol = stock_info['code'] name = stock_info['name'] price = float(stock_info['trade']) change_percent = float(stock_info['changepercent']) # 过滤无效数据 if '--' in [symbol, name]: continue # 保存到CSV文件 writer.writerow([symbol, name, price, change_percent]) # 关闭CSV文件 csv_file.close()操作步骤
时间: 2024-04-27 13:22:10 浏览: 120
TAIEX数据:可从https://www.twse.com.tw获取Json原始数据
这段代码的功能是爬取新浪财经网站上的股票数据,并将数据保存到CSV文件中。
具体步骤如下:
1. 导入所需的模块:requests、json、csv。
2. 设置爬取的URL,其中包含分页参数、排序方式、股票列表节点等信息。
3. 创建CSV文件,并写入表头信息。
4. 循环请求每一页数据,解析响应内容,提取所需数据,并保存到CSV文件中。
5. 关闭CSV文件。
需要注意的是,该代码仅能爬取新浪财经网站上的股票数据,且需要对新浪财经网站的数据接口进行了解和分析,否则可能会出现请求失败或数据异常的情况。同时,爬取网站数据也需要遵守相关法律法规和网站的使用协议,应谨慎使用。
阅读全文