как передать 3 переменные в threadpoolexecutor "карту" - PullRequest
0 голосов
/ 27 апреля 2020

этот код покажет проблему с забавой карты c, так как 3 аргумента для входа в систему очень важны

import requests
import random
import concurrent.futures

data = open("data.txt","r").read().splitlines()
#loding the username and password
url="example.com/login"
proxy= open("proxy.txt", "r").read().splitlines()
scheme = 'http://'

def login(data ,proxy,scheme):
    #for each row in the data to login with it

    datanow=data.split(":")
    user=datanow[0]
    password=datanow[1]

    prox =random.choice(proxy)
    prox=scheme+prox        

    headers={
    "Accept-Encoding":"gzip, deflate",
    "Content-Length": "159",
    "Connection":"keep-alive",
    "Accept": "application/json",        
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.92 Safari/537.36",
"Content-Type": "application/json",
    }

    data={
    "LOG_USER_IN":"true",
    "user_name": user ,
    "password": password
        }
     proxies = {
                'http': prox
                } 
    r=requests.post(url , timeout=5 , headers = headers,data=data ,proxies=proxies )

with concurrent.futures.ThreadPoolExecutor(max_workers=5) as executor:
    ### error come here as map take only the second argument as the parameters
    executor.map(login ,data ,proxy,scheme)
    #printing the reaspose
    print(r)

, если я использую неверный способ или concurrent.futures не лучший способ, пожалуйста сказал мне, потому что я новичок

...