爬取千万条基金数据是怎样的体验?

大家好,我是朱小五

昨天的文章《我用 Python 预测了股票价格》中就提了一嘴,最近爬了一些股票和基金数据。

再加上我们之前也做过基金抄底成功的概率问题,那就简单跟大家说一下如何爬取tiantian基金的数据。

基金代码

爬取基金的数据有个必要条件就是要知道基金代码,如何获取呢,打开官网找吧。

点了一圈,发现了基金代码的主页,寻思翻页爬取就完事了

http://fund.eastmoney.com/allfund.html

结果没想到F12打开下图中的fundcode_search.js

右键新标签页打开→

发现所有的基金代码都在,那么就更简单了呀。

1import requests 2import re 3import json 4import pandas as pd 5 6url = 'http://fund.eastmoney.com/js/fundcode_search.js' 7= requests.get(url) 8= re.findall('var r = (.*])', r.text)[0]   9= json.loads(a) 10fundcode = pd.DataFrame(b, columns=['fundcode', 'fundsx', 'name', 'category', 'fundpy'])  11fundcode = fundcode.loc[:, ['fundcode', 'name', 'category']] 12fundcode.to_csv('fundcode_search.csv', index=False, encoding='utf-8-sig') 13

运行获得所有基金代码共10736条数据。

爬取基金历史

有了上万个基金代码,再爬取他们近三年的净值数据,那四舍五入不就是千万条数据嘞~

《用python来分析:基金抄底成功的概率有多大?》中就已经给出了方法,同样打开基金网站,用浏览器自带流量分析工具可以轻松找到数据接口。

其中callback为返回js回调函数,可以删除,funCode为基金代码,pageIndex为页码,pageSize为每页返回的数据条数是,startDate和endDate分别为开始时间和结束时间。[1]

1fundCode = '001618'  #基金代码 2pageIndex = 1 3startDate = '2018-02-22'  #起始时间 4endDate = '2020-07-10'   #截止时间 5header = { 6    'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:69.0) Gecko/20100101 Firefox/69.0', 7    'Referer': 'http://fundf10.eastmoney.com/jjjz_{0}.html'.format(fundCode) 8} 9url = 'http://api.fund.eastmoney.com/f10/lsjz?fundCode={0}&pageIndex={1}&pageSize=5000&startDate={2}&endDate={3}&_=1555586870418?'\ 10    .format(fundCode, pageIndex, startDate, endDate) 11response = requests.get(url, headers=header) 12

这样单个基金的数据就爬取好啦

那如何结合前面的基金代码合集进行循环爬取,相信也难不倒大家

最后小结一下,希望大家不要用这个破方法

明明有tushare 、akshare等等金融数据接口,用着不香吗?

所以你要问我爬取千万条基金数据是怎样的体验?

我觉得自己很傻。。。

参考文章

[1]

《用python来分析:基金抄底成功的概率有多大?》: https://mp.weixin.qq.com/s/irjLb-lJSKnXBxfGQYTJog

下面这本书限时300积分兑换哦

也可参加当当活动每满100减50

感谢北京大学出版社的大力支持

本文转转自微信公众号凹凸数据原创https://mp.weixin.qq.com/s/SVjNWBLIHSepOeFZVXmQ9w,可扫描二维码进行关注: 如有侵权,请联系删除。

点赞
收藏

评论区

加载中...

相关推荐

3000字 “婴儿级” 爬虫图文教学 | 手把手教你用Python爬取 “实习网”!

1\.为"你"而写这篇文章,是专门为那些"刚学习"Python爬虫的朋友,而专门准备的文章。希望你看过这篇文章后,能够清晰的知道整个"爬虫流程"。从而能够"独立自主"的去完成,某个简单网站的数据爬取。好了,咱们就开始整个“爬虫教学”之旅吧!2\.页面分析①你要爬取的网站是什么?首先,我们应该清楚你要爬去的网站是什么?由于这里我们想要

java实现根据起点终点和日期查询去哪儿网的火车车次和火车站点信息

本文章为原创文章,转载请注明,欢迎评论和改正。一,分析  之前所用的直接通过HTML中的元素值来爬取一些网页上的数据,但是一些比较敏感的数据,很多正规网站都是通过json数据存储,这些数据通过HTML元素是爬取不到的,所以只能通过json数据的api接口来爬取数据。二,网站处理  1,打开去哪儿网的网站https://train.qu

python使用aiohttp通过设置代理爬取基金数据

说到python爬虫,我们就会想到它那强大的库,很多新手小白在选择框架的时候都会想到使用Scrapy,但是仅仅停留在会使用的阶段。在实际爬虫过程中遇到反爬机制是再常见不过的,今天为了增加对爬虫机制的理解,我们就通过手动实现多线程的爬虫过程,同时引入IP代理

手把手教你使用XPath爬取免费代理IP

大家好,我是霖hero。前言可能有人说,初学者Python爬虫爬数据太难啦,构造正则表达式的时候,太烦琐了,眼睛都看花了,而且前一秒还可以愉快地爬取,下一秒IP就被封了,这还爬个屁啊,不爬了。哎,不要着急,这篇文章我们教你如何使用XPath来爬取快代理中的免费代理IP,告别眼花,告别IP被封的烦恼。XPath首先我们来简单了解一下XPath,想要了解更多

厉害了,股票K线图还能这么画!

大家好,我是小五🐶发现大家还是最喜欢股票基金话题呀~那说到股票基金就不得不提——K线图!那小五今天就带大家👉用python来轻松绘制高颜值的K线图🚀获取股票交易数据巧妇难为无米之炊,做可视化也离不开数据。本文我将以酱香型科技——贵州茅台为例,获取它的近期股票数据并绘制K线图。如果我们要特意去动手去写爬虫,就显得有些多余了,这里

实战|手把手教你用Python爬取存储数据,还能自动在Excel中可视化!

大家好,在之前我们讲过如何用Python构建一个带有GUI的爬虫小程序,很多本文将迎合热点,延续上次的NBA爬虫GUI,探讨如何爬取虎扑NBA官网数据。 并且将数据写入Excel中同时自动生成折线图,主要有以下几个步骤。本文将分为以下两个部分进行讲解在虎扑NBA官网球员页面中进行爬虫,获取球员数据。清洗整理爬取的球员数据,对其进行可视化。