爬取关于BTC交易对的kline数据,并处理成CCI,VR技术指标

首先需要从AICOIN网站爬取Klinedata

由于使用的是动态数据,爬取起来会比较麻烦

以网页https://www.aicoin.cn/chart/binance_ethbtc

为例,按F12 , 在network 里面找到Headers信息:
爬取关于BTC交易对的kline数据,并处理成CCI,VR技术指标_第1张图片

需要使用 requests 包来模拟浏览器的行为

requestData = {
        'symbol': 'ethbtc:okex',
        'period': '720',
        'open_time': '24',
        'type': '1'
    }
    headers = {
        'Host': 'www.aicoin.cn',
        'Referer': 'https://www.aicoin.cn/chart/binance_ethbtc',
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.87 Safari/537.36',
        'X-Requested-With': 'XMLHttpRequest',
        'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',
        'Cookie': 'cookie from browser'
        # 需要登陆后捕获cookie并调用
    }

response = requests.post(url, headers=headers, data=requestData)

注意不能爬取过快,否则会触发反扒机制,可以简单加一个sleep:

time.sleep(random.random() * 3)

获取到klinedata:
爬取关于BTC交易对的kline数据,并处理成CCI,VR技术指标_第2张图片

使用talib包来计算技术指标:

CCI = ta.CCI(dataHigh, dataLow, dataClose, timeperiod=20)

输出到excel文件:
在这里插入图片描述

完整代码见:

https://github.com/zwk1091/BTC_Crawler

你可能感兴趣的:(python,python,爬虫,区块链,比特币,BTC)