Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import requests
- import json,csv
- import os,time
- from bs4 import BeautifulSoup as bs
- #取得當前工作路徑
- workpath=os.getcwd()
- #建立個股連結(含日期)&抓取資料
- def get_data(year, month, stock_id):
- date=str(year)+'{0:0=2d}'.format(month)+'01' #格式yyyymmdd
- sid=str(stock_id)
- url_twse='http://www.twse.com.tw/exchangeReport/STOCK_DAY?response=json&date='+str(date)+'&stockNo='+str(stock_id)
- res=requests.post(url_twse,)
- soup=bs(res.text,'lxml')
- data=json.loads(soup.text)
- #存檔路徑
- mydir=os.path.join(workpath,str(stock_id),str(year))
- filename='Stock_'+sid+'_'+str(year)+'_'+'{0:0=2d}'.format(month)+'.csv'
- if not os.path.isdir(mydir):
- os.makedirs(mydir)
- #檢查檔案是否存在
- if not os.path.isfile(os.path.join(mydir,filename)):
- outputfile=open(os.path.join(mydir,filename),'w',newline='')
- outputwriter=csv.writer(outputfile)
- outputwriter.writerow(data['title'])
- outputwriter.writerow(data['fields'])
- for data in(data['data']):
- outputwriter.writerow(data)
- outputfile.close()
- else:
- print('已有相同檔名的檔案存在!!!')
- return data
- #函數格式 get_data(yyyy,mm,股票代碼)
- #測試
- data=get_data(2017,10,2330)
Advertisement
Add Comment
Please, Sign In to add comment