继续做的数据分析,由于新浪获取的是未复权数据,所以在分析的时候出了些小问题,结果变得扑所迷离。于是又用了几天Tushare的获取复权数据功能,本来是写了个循环,每天自动获取,可是几乎每次下载都卡死了,这真是坑爹的网络。翻了翻Tushare的这段代码,Tushare的这个数据倒也是新浪的,但是是从网页上扒下来的,过程好像获取了两个地址的数据,貌似一个复权因子一个后复权数据,没细看了。反正我也不认为这是合理的获取方式,理想的当然是JSON或者XML之类的格式最好了。百度了一圈,没有发现哪里有免费的前复权数据,更找不到除权数据,心想找到除权数据也好啊,自己来复权。这过程中,得到了几个新浪地址,好像和复权有关,但是也没琢磨出怎么用。在这里先把地址贴下来,有时间再研究。

http://vip.stock.finance.sina.com.cn/api/json.php/BasicStockSrv.getStockFuQuanData?symbol=sz000001&type=hfq,和惯例一样,symbol指得是股票代码,而type按拼音来说应该是后复权,但我输入qfq之后得到并非前复权。

http://biz.finance.sina.com.cn/stock/flash_hq/kline_data.php?symbol=sz000001&begin_date=20100101&end_date=20161206,同上,只是有开始和结束时间。

新浪没办法了,看到很多网友都是从大智慧获取,毕竟资料还多,于是下载安装了个大智慧365。装好后在安装目录下有个Download文件夹,而除权数据就在PWR文件夹里,FIN文件夹里放的是财务数据,而ABK里则是大智慧的板块数据。

这里之所以写个日志是因为,365里的数据结构并非网络上写的四字节方式,四字节转赠股,四字节红利,四字节的配股,四字节配股价。我所看到的是120字节分段的形式,任一只股票先120字节的4-12字节为代码,接来下的120字节里前四个字节为除权日期,接着4-20字节为空,剩下的就是除权数据了,而这个数据并非分段的数值形式,而是一句话,比如10股送5股之类的,就是说得到这句话后还要进行分割。一只票除权了多少次就有多少个这样的120字节了,整理之后把代码贴上:

path = '/home/jeff/Share/DZH/Download/PWR/'

name = ['full_sh.PWR','full_sz.PWR']

data = []

for i in name:

exFile = open(path+i,'rb')

exFile.seek(8)

while True:

exContent = exFile.read(120)

if not exContent:

break

if exContent[:4] == b'\xff\xff\xff\xff':

code = exContent[4:12].decode('gbk')

elif len(exContent) > 0:

date= struct.unpack("I", exContent[:4])[0]

date= time.localtime(date)

exlist = exContent[20:].decode('gbk').split('\x00')[0][2:].split()

present = 0

bonus = 0

rationed = 0

price = 0

for i in exlist:

if '送' in i:

present += float(re.findall(r"\d+\.?\d*",i)[0])

if '增' in i:

present += float(re.findall(r"\d+\.?\d*",i)[0])

if '派' in i:

bonus += float(re.findall(r"\d+\.?\d*",i)[0])

if '价' in i:

price += float(re.findall(r"\d+\.?\d*",i)[0])

if '配' in i:

rationed += float(re.findall(r"\d+\.?\d*",i)[0]) - price

data.append({'code':code[2:],'date':date,'present':present,'bonus':bonus,'price':price,'rationed':rationed})

return data

python读取大智慧数据_用Python抓取大智慧除权数据相关推荐

  1. java 省市县数据_使用Jsoup抓取全国地区数据(省市县镇村)

    最近手头在做一些东西,需要一个全国各地的地域数据,从省市区到县镇乡街道的.各种度娘,各种谷歌,都没找到一个完整的数据.最后功夫不负有心人,总算找到一份相对来说比较完整的数据,但是这里的数据也只是精确到 ...

  2. Python,网络爬虫selenium与pyautogui抓取新浪微博用户数据

    Python,网络爬虫selenium与pyautogui抓取新浪微博用户数据 不需要登陆新浪微博账户,直接运行就可以通过python爬虫爬取新浪微博用户数据.本例selenium与pyautogui ...

  3. wireshark怎么抓apk 包_图解如何抓取手机的数据封包「手机抓包技术详解」

    通常我们主要抓取手机等移动设备的三种数据封包:TCP.HTTP.HTTPS.本文我们主要通过图文详细讲解使用wireshark抓取手机的tcp数据包,使用Fiddler抓取手机的HTTP.HTTPS数 ...

  4. python读取第二行_使用Python操作Excel(二):读取数据表

    上一节我们提到,使用openpyxl可以方便的对数据表进行操作,例如:抽象Excel数据并存入数据库 将数据库数据导出到Excel 给一个已存在的数据表追加信息 我们还介绍了一些Excel的基本术语, ...

  5. python读取sas数据集_利用Python获取SAS和R自带数据集

    图:北京-奥森公园-2018年4月 无论是SAS.R还是Python,本身都自带一些数据集,对于初学者来说,可以通过这些自带的小数据集进行编程练习,无疑是非常方便的.SAS.R作为统计分析软件,本身自 ...

  6. python读取xls文件_从python中的xls读取unicode

    我正在尝试使用 Python读取.xls文件.该文件包含多个非ascii字符(即äöü).我已经尝试过使用openpyxls和xlrd(我对xlrd寄予厚望,因为它无论如何都会读取unicode中的所 ...

  7. python 爬虫课程推荐_关于递归抓取的课程推荐

    Python爬虫包 BeautifulSoup 递归抓取实例详解概要:爬虫的主要目的就是为了沿着网络抓取需要的内容.它们的本质是一种递归的过程.它们首先需要获得网页的内容,然后分析页面内容并找到另一个 ...

  8. python读取cad表格_使用Python读取AutoCAD DXF文档

    作为<使用Python创建AutoCAD DXF文档>的姊妹篇,本文介绍用Python读取DXF ============================================= ...

  9. python爬取京东手机数据_用scrapy爬取京东的数据

    本文目的是使用scrapy爬取京东上所有的手机数据,并将数据保存到MongoDB中. 一.项目介绍 主要目标 1.使用scrapy爬取京东上所有的手机数据 2.将爬取的数据存储到MongoDB 环境 ...

  10. python淘宝爬虫_简单的抓取淘宝图片的Python爬虫

    写了一个抓taobao图片的爬虫,全是用if,for,while写的,比较简陋,入门作品. 从网页http://mm.taobao.com/json/request_top_list.htm?type ...

最新文章

  1. 行业深度见解•SD-WAN对于企业云的重要性
  2. 亿景WideLink系统与微软统一通信的整合
  3. linux shell rm 删除子目录下 所有.o后缀文件
  4. 检测和测试停滞的流– RxJava常见问题解答
  5. Pro*c使用滚动游标进行更新或删除游标行
  6. 常用WebServices返回数据的4种方法比较
  7. 右下角出现测试模式 win7 内部版本7601如何去掉
  8. java day28【多表查询 、事务 、DCL】
  9. 深度剖析供应链风险管理
  10. 51Nod 1179
  11. win10安装oracle18c,Win10 Oracle 18c 完全卸载
  12. vue中下载图片跨域
  13. ABeam Insight (德硕)| Smart Conference ——让你的生意跨越语言障碍
  14. 你的代码暴漏了你的年龄(毕业设计)--技术文档+程序源代码
  15. 机器学习入门(五):集成学习Bagging,Boosting,RandomForest和GridSearchCV参数调优
  16. 想学3D建模?适合安装3dsmax软件的笔记本配置
  17. 英国开发者年龄歧视为29岁,女程序员幸福指数略高于男性 | 全球开发者幸福指数报告
  18. Android TextView详解(一)
  19. 蜘蛛大战之 站点LOGO(SEO)
  20. Docker 入门学习

热门文章

  1. python创建方法draw_Python draw.polygon方法代碼示例
  2. 机械师T58-V加装机械硬盘
  3. 利用Matlab开发基于XSENS Mtw传感器模块的行人室内实时定位系统的相关
  4. 本地yum - 下载阿里云cloud - 阿里云 挂在云盘 aliyun挂云盘
  5. 苹果官网php,苹果官方购买产品服务器端验证代码PHP版
  6. Unity Shader 学习笔记(4)URP渲染管线带阴影PBR-Shader模板 -- 新增可自定义阴影颜色
  7. 布尔矩阵分解 代码实现(BMF)--MEBF论文阅读
  8. IBM实习生笔试题目
  9. 一个plc的实现第二部感言
  10. ubuntu VScode 无法输入中文