首先,客户原需求是获取https://hq.smm.cn/copper网站上的价格数据(注:获取的是网站上的公开数据),如下图所示:
如果以该网站为目标,则需要解决的问题是“登录”用户,再将价格解析为表格进行输出即可。
但是,实际上客户核心目标是获取“沪铜CU2206”的历史价格,虽然该网站也有提供数据,但是需要“会员”才可以访问,而会员需要氪金......
数据的价值!!!
鉴于,客户需求仅仅是“
沪铜CU2206
”一项期货的历史价格,氪金会员性价比不高,因此,
实际的任务目标变为如何获取的历史价格,目标变为全网有公开提供数据的网址
。而最终解决该问题,是求助于万能的百度^_^。找到了合适的网站,且获取数据的难度也几乎降到了最低难度。
-
百度搜索资源:这个步骤是整个任务完整的最难点(实际不难),但这里卖个关子,全文不公布最终找到的网站,大家试试看能否搜索到,以及花费多少时间^_^。
-
解析网站的请求,最终找到的网站经解析后,发现获取数据是通过get的方式提交参数。而请求的参数如下:
/price?starttime=1638545822&endtime=1654357022&classid=48
,一看就知是开始时间、结束时间的时间戳,以及商品id。再解析headers,居然连cookie都不需要,说明没有反爬!没有反爬!没有反爬!不得不说运气爆棚!
-
解析响应数据:由于响应数据是规整的json格式数据,使用pandas的read_json直接能够获取dataframe格式的数据,该步骤也并无难度。
鉴于网站没有反爬,且参数简单,实际上的任务主要是规划一下如何设计增量更新数据信息的流程,具体代码如下:
从技术角度来看,经过一步步解析,任务是简单的,入门requests爬虫以及入门pandas数据分析就可以完成(唯一的难度在找到合适的目标)。但是换个角度,从经济价值来看,又是很有价值的,即节约了某网站高昂的年费(注:并不是说年费不值得,只是局限在需求仅仅是CU2206一项数据上时,性价比太低),同时又避免了人工操作的繁琐,以及可能产生的错误。用很小的学习成本就能解决大大的问题,所以,还等什么呢?开启Python之路吧!
图书简介◆
《Python金融量化分析》是有关Python在金融量化分析领域应用的一本从入门到精通类图书。全书分4篇共10章。第1篇(第1~3章)简单介绍了Python的基础知识,包括数据类型、循环体、函数、类与面向对象,以及常用的标准库与扩展库;第2篇(第4~6章)介绍了Python在金融量化交易中的应用,包括资产类别、衍生品等金融基础知识,数学与统计学基础知识,以及量化投资策略开发的一般化流程;第3篇(第7、8章)介绍了Python在量化风险管理中的应用,包括风险类别的介绍、市场因子的模拟,以及投资组合优化;第4篇(第9、10章)用5个实战案例具体演示了Python在金融量化分析中的应用。
在此评论区 评论“
人生苦短 我学python
”即可参与抽奖
首先,客户原需求是获取https://hq.smm.cn/copper网站上的价格数据(注:获取的是网站上的公开数据),如下图所示:如果以该网站为目标,则需要解决的问题是“登录”用户,再将价格解析为表格进行输出即可。但是,实际上客户核心目标是获取“沪铜CU2206”的历史价格,虽然该网站也有提供数据,但是需要“会员”才可以访问,而会员需要氪金......数据的价值!!!鉴于,客户需求仅仅是“沪铜CU2206”一项期货的历史价格,氪金会员性价比不高,因此,
因为自己最近在学习做
期货
交易,想要下载
期货
的行情
数据
来做分析。有一些交易软件是可以导出
数据
的,但是导出的过程还是需要很多的手工操作,自己在想能不能通过
Python
程序来实现呢。
新浪
期货
数据
接口介绍
通过在网上搜索找到了新浪财经的
期货
数据
API用法,详细可以参考这个链接:
http://blo...
Python
是一种高级编程
语言
,越来越多的
金融
从业者开始使用它来处理
金融
数据
。在本文中,我们将探讨
Python
在
金融
市场中的应用,从股票到
期货
,包括股票量化交易、风险管理、
金融
数据
分析和
期货
交易。
股票量化交易
Python
可用于股票量化交易,也就是通过算法进行股票交易。这种方法使用数学和统计学原理来分析股票市场,并根据预测结果决定何时买卖股票。
Python
有许多开源库,如Pandas和NumPy等,可帮助分析
金融
数据
并构建量化模型。
例如,我们可以使用Pandas库来下载和读取股票历史
数据
,并使用
import datetime
#r = requests.get("http://stock2.finance.sina.com.cn/futures/api/json.php/IndexService.getInnerFuturesMiniKLine5m?symbol=M0")
print('001')
url = "http://stock2.finance.sina.com.cn/futures/api/json.ph
def get_data(id):
url_1d = 'http://stock2.finance.sina.com.cn/futures/api/json.php/IndexService.getInnerFuturesDailyKLine?symbol='
url = url_1d + id
req = request.Request(url)
问题1:需要我的Excel
由于疫情已经趋于稳定,所以我不会再更新了,有需要的自己下载
https://download.csdn.net/download/weixin_42029733/12233878
问题2:为什么412?为什么获取不了
数据
?等等等等
1、这是因为我代码里全国的cookies需要你自己打开浏览器更新好后替换,而且这个cookies大概只能持续20秒左右!
2、另外全国卫健委的
数据
格式一直在变,也有可能会导致
爬取
失败!
import requests
from bs4 import BeautifulSoup
import datetime
import re
from lxml import html #这个是用于页面
爬取
import xlsxwriter#操作Excel表格库
workbook = xlsxwriter.Workbook('E:/test/test.xlsx')# 新建的Excel表格文档路径
worksheet = workbook.add_worksheet() # 建立sheet, 可以work.add_worksheet('em