Reputation: 51
I have the below sample example where I have used a dummy URL
account_list = ['aacc14-27','aacc14-26','aacc13-25','cad5r-98']
appended_data = []
for i in account_list:
url = 'http://22.45.78:8000/transactions?accountId='+i
x = pd.read_json(url)
appended_data.append(x)
The speed of the above code is not very quick. Is there a better way to improve the overall speed of the loop for processing data?
Upvotes: 0
Views: 44
Reputation: 41
You can use python multiprocessing, for example:
import multiprocessing as mp
url = 'http://22.45.78:8000/transactions?accountId='
def load_json(account, data):
x = pd.read_json(url+account)
data.append(x)
account_list = ['aacc14-27','aacc14-26','aacc13-25','cad5r-98']
pool = mp.Pool(processes=4)
manager = mp.Manager()
appended_data = manager.list()
[pool.apply_async(load_json, args=[e,appended_data]) for e in account_list]
pool.close()
pool.join()
print(appended_data)
Upvotes: 1