##現状
今現在、pythonの勉強も兼ねて、為替の動きをスクレイピングし、リアルタイムでグラフに出力しようと考えています。
##やりたいこと
為替データをスクレイピングし、listの中に入れることはできました。
次に、10秒ごとにlistに値が追加されるのですが、この様子を横軸タイムステップ、縦軸為替レートのグラフに順次追加されていくようなコードを書きたいと思っております。
下のコードですと、
'int' object is not iterable
のエラーが出てしまい、for文のどの部分を直せば良いのかがわかりません。
詳しい方、ご教授お願いいたします。
python
1 2import numpy as np 3import matplotlib.pyplot as plt 4from bs4 import BeautifulSoup 5import urllib.request as req 6import time 7 8#ドル円チャート取得 9def dollar(): 10 url="https://info.finance.yahoo.co.jp/fx/detail/?code=USDJPY=FX" 11 res = req.urlopen(url) 12 soup = BeautifulSoup(res, 'html.parser'); 13 values = soup.select_one("#USDJPY_detail_bid").findAll(text=True) 14 rate = float(''.join(values)) 15 return rate 16 17x=[] 18lst=[] 19while True: 20 rate = dollar() 21 lst.append("{}".format(rate)) 22 #print("{}".format(rate)) 23 time.sleep(10) 24 25 %matplotlib 26 fig, ax = plt.subplots(1, 1) 27 28 for i in len(lst): 29 x.append(i) 30 line, = ax.plot(x,lst, color='blue') 31 plt.pause(10) 32 #グラフをクリア 33 line.remove()
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2020/12/29 09:34