我希望從這個環節中提取的歷史價格: https://pakstockexchange.com/stock2/index_new.php?section=research&page=show_price_table_new&symbol=KEL數據提取使用Python
要做到這一點,我用下面的代碼
import requests
import pandas as pd
import time as t
t0=t.time()
symbols =[
'HMIM',
'CWSM','DSIL','RAVT','PIBTL','PICT','PNSC','ASL',
'DSL','ISL','CSAP','MUGHAL','DKL','ASTL','INIL']
for symbol in symbols:
header = {
"User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.75 Safari/537.36",
"X-Requested-With": "XMLHttpRequest"
}
r = requests.get('https://pakstockexchange.com/stock2/index_new.php?section=research&page=show_price_table_new&symbol={}'.format(str(symbol)), headers=header)
dfs = pd.read_html(r.text)
df=dfs[6]
df=df.ix[2: , ]
df.columns=['Date','Open','High','Low','Close','Volume']
df.set_index('Date', inplace=True)
df.to_csv('/home/furqan/Desktop/python_data/{}.csv'.format(str(symbol)),columns=['Open','High','Low','Close','Volume'],
index_label=['Date'])
print(symbol)
t1=t.time()
print('exec time is ', t1-t0, 'seconds')
上面代碼中提取從鏈路的數據將其轉換爲熊貓數據框並保存。
問題是,它需要很多時間,並且對於更多符號來說效率不高。任何人都可以建議任何其他方式以有效的方式實現上述結果。
此外,是否有任何其他編程語言可以在較短的時間內完成相同的工作。
我會_guess_那個時候一個體面的部分是在阻塞GET請求。如果您嘗試異步運行請求,會發生什麼情況,例如與['request-futures'](https://github.com/ross/requests-futures)? – roganjosh
不在我平時的電腦上,下載一些先決條件來測試:) – roganjosh
我是編程新手,所以需要我花時間嘗試異步運行請求。閱讀文檔。 –