通过网易财经爬取股票数据

之前在回测的时候遇到数据质量太低,不得不用第三方平台去解决这个问题,最近看了一个视频,讲解通过网易财经爬取股票数据,重新把代码打了一遍,发现的确可行。

网址:http://quotes.money.163.com/trade/lsjysj_601899.html#01b07

(个股——资金流向——历史交易数据)

虽然网易财经在金融方面做的真心谈不上数一数二,但是数据方面还真挺人性,可以直接下载,而且质量也挺高。

配合上海证券交易所公布的所有股票代码和上市日期,就可以轻松爬取全部上海股票数据了。

最有意思的是同样的代码,换成深圳的股票,就不能爬取,爬取的文件全部是空白文件,不知道是什么原因。

 

注意事项:

1.函数使用urllib.request.urlretrieve(),这个函数是中python3之后对python2进行了一下修改,所以版本不一样的话,代码不同。

2.交易所给的日期是yyyy-mm-dd,要改成yyyymmdd,用df.iloc[].str.replace(),这个地方是一个难点,不知道这个函数的话,可以用循环去做,但是浪费时间

3.上海交易所的数据之中,有一个是空,代码600996,需要自己补全,上市日期是2016-12-26,这个股票应该是重组过,不然这个代码不可能上市时间这么晚。

4.pandas 官网给出的数据清洗的方法还是挺不错的。

https://pandas.pydata.org/pandas-docs/stable/text.html?spm=a2c4e.11153940.blogcont620162.11.30174b10exPiQS

5.在爬取深圳股票的时候,因为需要修改代码,比如000001,正常print的话,就是1,因为默认是int,这个时候可以用df.列名.astype(str),强制转换为str,要注意的是df中object代表str,因为字符串格式不固定,所以用object.

别以为转换过去之后就可以使用了,这个时候需要把那些缺0的数据进行补全,很明显需要用for循环遍历,但是for循环不能修改数据,所以,修改的时候要变通一下,用enumerate来做。

6.其实自己爬数据还是挺折腾的,数据也不值钱,还浪费时间学爬虫,还得进行数据清洗和规整,这些数据就算爬下来,还得进行复权处理,还是第三方平台快一点,处理数据绝对是脏活累活。

  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值