Python读取国外股票数据方法

由于yahoo已经中止了大陆地区的服务,所以原来使用pandas_datareader模块,以及升级版本的yfinance模块,包括许多网络上介绍的方法,读取股票行情数据都是失败的,可能是雅虎接口变化引起的。经过两天的在谷歌查找终于找到解决方案,需要以下几步准备:

1.解决上网的问题,这是必须;

2.引入import io, requests , pandas as pd包,由于最新URLLib3最新库访问Https会报错,必须将URLLib3的版本从新版本降低到1.25.11 以下(pip install urllib3==1.25.7 ),这时使用 requests 的get方法读取股票数据。

3.通过get方法访问https://query1.finance.yahoo.com/v7/finance/download/得到一个excel文件,然后使用pandas.read_csv函数生成dataframe

def fetch(ticker, start="2022-01-01", end="2022-02-02",intervalstr="1d"):
    headers = {
        'User-Agent': 
        'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_2) 
         AppleWebKit/601.3.9 (KHTML, like Gecko) Version/9.0.2 
         Safari/601.3.9'
    }

    url = "https://query1.finance.yahoo.com/v7/finance/download/" + str(ticker)
    x = int(datetime.strptime(start, '%Y-%m-%d').timestamp())
    y = int(datetime.strptime(end, '%Y-%m-%d').timestamp())
    url += "?period1=" + str(x) + "&period2=" + str(y) + 
     "&interval="+intervalstr+"&events=history&includeAdjustedClose=true"
    
    print(url)
   
    r = requests.get(url, headers=headers,verify=False)
    pd1 = pd.read_csv(io.StringIO(r.text), index_col=0, parse_dates=True)
    return pd1
#使用AAPL测试
now =datetime.strptime('2022-05-30', '%Y-%m-%d')
print(int(now.timestamp()) )
startv = "2022-01-03"
endv =str( datetime.now().strftime("%Y-%m-%d"))
print(endv)
data = fetch("AAPL",start=startv,end=endv,intervalstr="1d")
print(data)

4.在雅虎我们免费只能取得股票的每天行情数据,其它一些基本数据,更多的数据被其移到finance plus 那么更多的股票数据必须花钱才能才能拿到。国内数据有tushare,baostock 包可以使用。

 

  • 0
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
Python 网络爬虫在国外得到了广泛的研究和应用,以下是一些具有代表性的研究: 1. 人工智能与 Python 网络爬虫的结合:通过使用 Python 网络爬虫和机器学习算法,研究者们可以自动化地获取和分析大量的数据,并从中发现规律和趋势。例如,使用机器学习算法对爬取的数据进行情感分析和预测,从而为企业和机构提供更准确的市场分析和决策支持。 2. Python 网络爬虫的优化和效率提升:研究者们通过对 Python 网络爬虫的优化和效率提升,使其在处理大数据时更加高效和准确。例如,使用多线程和分布式技术,将任务分解到不同的计算机上进行处理,从而提高爬取的效率和速度。 3. Python 网络爬虫的应用于新闻媒体:研究者们通过 Python 网络爬虫获取新闻媒体的大量数据,分析其内容和趋势,从而为新闻媒体提供更准确的报道和决策支持。例如,研究者们使用 Python 网络爬虫分析新闻媒体的社交媒体传播效应,从而为新闻机构提供更好的社交媒体推广策略。 4. Python 网络爬虫的安全性和隐私保护:研究者们通过对 Python 网络爬虫的安全性和隐私保护进行研究,从而保证爬取数据的安全性和合法性。例如,研究者们使用 Python 网络爬虫对互联网上的个人信息进行挖掘和分析,从而提高个人信息的保护和隐私安全。 总之,Python 网络爬虫在国外得到了广泛的研究和应用,其应用领域涉及到多个行业和领域,研究者们在不断地探索和创新。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值