爬取数据的速度太慢,完全不符合量化交易的需求。
我的思路是从交易网站上的API获取所有币种的信息,然后筛选出我想要分析其数据的币种,大约有1400个,然后将币种名称用for循环填入到获取K线的的代码中,这个时候就发现,爬取速度比较慢了,获取一个币种的K线需要3秒左右,如果再加上后面还需要获取其他的数据,再加上大量的策略判断,速度就会变得非常非常慢了,我的需求是如何解决这个问题?通过多进程?多线程?如果可以,请在我的代码上进行修改,太过抽象的方法我可能不懂,因为是0基础接触python的第5天~
按照楼下说的把该PY文件分成多个,然后同时运行,确实能够解决问题,电脑也完全能够负荷,但是怎样才能一键同时启动10个PY文件?
把这个文件复制n份,每份for循环部分币种,同时开始运行,相当于物理多线程,效果就看你电脑性能
1、随便套个多线程模板或者框架就行了,python多线程再慢也比单线程快的多
2、多进程启动,像你现在分很多文件,可以通过windows脚本命令一键启动
首先你不必表达自己学了几天,5天能 自己写 代码,那肯定有学过其他语言,没啥好说的。
其次,要想马儿跑,还不给马儿喂草,当然不行。
要想解决问题,可以试一试分布式,当然对于io操作进程加协程效果也好。
可以采用scrapy分布式爬虫,速度会快很多