python - 抓取汇率数据分析美元和欧元对RMB的变化曲线
发布日期:2021-06-30 19:51:17 浏览次数:2 分类:技术文章

本文共 2076 字,大约阅读时间需要 6 分钟。

数据:

实例:

import requestspayload = {    'projectBean.startDate' : '2017-06-18',    'projectBean.endDate' : '2017-09-18',    'queryYN' : 'true'}response = requests.post('http://www.safe.gov.cn/AppStructured/view/project_RMBQuery.action',                        data=payload)html = response.text

import sqlite3 as dbwith db.connect('currency.sqlite') as con:    df_rates.to_sql('currency_data', con=con, if_exists='replace', index=None)
from datetime import datetime, timedeltacurrent_time = datetime.now()for i in range(0, 300, 31):    # 为了避免重复,range T - days T = 1    start_date = (current_time - timedelta(days = i + 30)).strftime('%Y-%m-%d')    end_date = (current_time - timedelta(days = i)).strftime('%Y-%m-%d')

def get_currency(start, end):    payload = {    'projectBean.startDate' : start,    'projectBean.endDate' : end,    'queryYN' : 'true'    }    response = requests.post('http://www.safe.gov.cn/AppStructured/view/project_RMBQuery.action',                            data=payload)    html = response.text    doc = pq(html)    info = '
{info}
'.format(info=doc('#InfoTable').html()) dfs = pd.read_html(info, header=0) df_rates = pd.melt(dfs[0], col_level=0, id_vars='日期') df_rates.columns = ['date', 'currency', 'exchange'] with db.connect('currency.sqlite') as con: df_rates.to_sql('currency_data', con=con, if_exists='append', index=None) current_time = datetime.now()for i in range(0, 300, 31): # 为了避免重复,range T - days T = 1 start_date = (current_time - timedelta(days = i + 30)).strftime('%Y-%m-%d') end_date = (current_time - timedelta(days = i)).strftime('%Y-%m-%d') print(i, start_date, end_date) get_currency(start_date, end_date)
with db.connect('currency.sqlite') as con:    df = pd.read_sql('select * from currency_data where currency = "美元"', con=con)

% pylab  inlinedf.plot(kind='line', rot=30)

with db.connect('currency.sqlite') as con:    df = pd.read_sql('select * from currency_data where currency in ("美元", "英镑")', con=con)        df['date'] = pd.to_datetime(df['date'] ,format='%Y-%m-%d')df.info()

转载地址:https://lipenglin.blog.csdn.net/article/details/78024991 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:python 数据科学 - 【回归分析】 ☞ 线性回归(1)
下一篇:python - 使用sql 分析(06 - 15)国内各省GDP

发表评论

最新留言

逛到本站,mark一下
[***.202.152.39]2024年04月29日 15时47分23秒