from iqoptionapi.stable_api import IQ_Option
def connect_to_iq():
API = IQ_Option('[email protected]','example01')
API.connect()
API_2 = IQ_Option('[email protected]','example02')
API_2.connect()
print(API.get_balance())
print(API_2.get_balance())
connect_to_iq()
# Make the same result i dont know why.
賬戶一余額為 10036 賬戶二余額為 10000
但什么是印刷品是:
10036 10036 我無法弄清楚為什么會這樣。
uj5u.com熱心網友回復:
您是否嘗試給您的函式發送電子郵件并傳遞引數?
def connect_to_iq(email, password):
API = IQ_Option(email, pass)
API.connect()
return API.get_balance()
connect_to_iq('[email protected]','example01')
connect_to_iq('[email protected]','example02')
uj5u.com熱心網友回復:
我查看了該庫,它將狀態(我認為 ssid == session id)保存為全域參考變數。我能想到的一種解決方案是為每個執行緒 行程實體化庫。
這意味著行內匯入庫。
class ApiProcess(multiprocessing.Process):
api = None
def __init__(self, email, password):
super().__init__()
# Set parameters
self.email = email
self.password = password
def run(self):
# Run
# Import the library as it will instantiate it, but this time per thread
from iqoptionapi.stable_api import IQ_Option
self.api = IQ_Option(self.email, self.password)
self.api.connect()
print(self.api.get_balance())
if __name__ == '__main__':
process1 = ApiProcess("[email protected]", "example01")
process2 = ApiProcess("[email protected]", "example02")
process1.start()
process2.start()
請注意,我沒有對此進行測驗。它可能不起作用,但據我了解它應該起作用。
編輯:更改為多處理,而不是多執行緒,因為執行緒共享記憶體
uj5u.com熱心網友回復:
謝謝我的朋友,我用多行程解決了這個問題。
from iqoptionapi.stable_api import IQ_Option from multiprocessing import Process
def conectar_iq(電子郵件,senha):
API = IQ_Option(str(email),str(senha))
API.connect()
print(API.get_balance())
如果名稱== '主要':
processar = Process(target=conectar_iq, args=('[email protected]','example01',))
process_two = Process(target=conectar_iq, args=('[email protected]','example02',))
processar.start()
process_two.start()
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/444430.html
標籤:Python
上一篇:如何正則運算式這個鏈接?
下一篇:Python子串列洗掉方法
