目录
总结
前言
buff平台的商品价格有较大的波动范围,在特定的时间段(寒暑假等)还会有大幅的增长,如何选择低价商品进行购入,在高价时卖出,博取相当收益。buff提供的历史价格数据可以作为重要的参考依据。
这篇文章主要介绍了如何使用python获取buff商品历史价格,通过计算,对比当前价格和历史价格的大小,预警低价商品。
一、如何获取低价标准
在buff中,每个商品都存在价格趋势,普通用户可以获取一个月内商品的60个价格点(每天2个价格点),充值plus会员后,甚至可以获取6个月的历史价格数据。虽然价格不是连续线性的,但是也具有一定的参考价值。题主没有充会员,就用1个月作为参考哈哈。
buff价格趋势曲线图
二、代码实现
1.引入库
import re
import requests as req
import time,random,winsound,sendmessage,numpy as np
from datetime import datetime
class CS():
def __init__(self):
self.nowtime = datetime.now()
self.goodsurl = 'https://buff.163.com/api/market/goods'
self.pricehistoryurl = 'https://buff.163.com/api/market/goods/price_history/buff'
self.my_headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.131 Safari/537.36",
"Cookie": "yourcookie",#你自己的cookie
"Host": "buff.163.com",
"Referer": "https://buff.163.com/market/?game=csgo",
"X-Requested-With": "XMLHttpRequest"
}
这里用到的两个api
self.goodsurl = 'https://buff.163.com/api/market/goods'
self.pricehistoryurl = 'https://buff.163.com/api/market/goods/price_history/buff'
分别是查找符合商品的api和获取历史价格的api
2.获取商品数据
def SearchGoods(self, weaponame): # 搜索符合价格标准的weaponlist商品,返回商品id等数据
nowtime = self.nowtime.timestamp()
##############参数调整################
param = {
'game': 'csgo',
'page_size': 80,