pandas 为什么要将两个用户名追加到列表中,而不是一个

uoifb46i  于 12个月前  发布在  其他
关注(0)|答案(1)|浏览(152)

有一个列表逻辑的问题,我相信我的代码生成一个随机的用户名和密码,然后将它们附加到单独的用户名和密码列表,然而,当我打印出这个列表的代码似乎要么填充两个索引相同的用户名,或交替之间的一个和两个相同的用户名,然而,密码列表似乎是正确的格式。任何帮助将不胜感激。
我尝试创建一个while循环来检查用户名是否已经在列表中,然而,这似乎只是创建了一个永不结束的while循环,即使用户名是唯一的。我最初使用基本的文件io逻辑来写入文件,但我切换到pandas,这导致我首先发现了这个问题。我还尝试看看chat gpt是否有任何解决方案,但是模型说我的代码似乎是正确的(尽管我对此持保留态度)。

usernames = []
passwords = []
emails = []
email_names = ['alpha',
                'omega',
                'ruby',
                'sapphire',
                'omegraruby',
                'alphasaphhire',
                'artreus',
                'kratos',
                'leai']

def create_acc():
    
    user_input = int(input('Enter the number of accounts you would like to create: '))
    for i in range(user_input):

        time_stamp = time.time()
        url = 'https://www.reddit.com/account/register/'
        driver.get(url)
        driver.maximize_window()

        email_name = random.choice(email_names)
        username = generate_username(name_of_user = email_name)
        password = pw_gen()
        usernames.append(username)
        passwords.append(password)
        print(usernames)
        print(username)
        
        #username index 0 matches with password index 0
        
        wait = WebDriverWait(driver, 10)
        wait.until(EC.presence_of_element_located((By.ID, 'regEmail')))
        wait.until(EC.element_to_be_clickable((By.ID, 'regEmail')))
        wait.until(EC.presence_of_element_located((By.TAG_NAME, 'button')))

        submit_btn = wait.until(EC.element_to_be_clickable((By.TAG_NAME, 'button')))

        email_field = driver.find_element(By.NAME, 'email')
        time.sleep(1)
        email_field.send_keys(rand_email())
        time.sleep(5)
        submit_btn.click()

        user_field = wait.until(EC.presence_of_element_located((By.NAME, 'username')))
        wait.until(EC.element_to_be_clickable((By.NAME, 'username')))

        pswd_field = wait.until(EC.presence_of_element_located((By.NAME, 'password')))
        wait.until(EC.element_to_be_clickable((By.NAME, 'password')))

        wait.until(EC.presence_of_element_located((By.TAG_NAME, 'button')))
        signup_btn = wait.until(EC.element_to_be_clickable((By.XPATH, '/html/body/div/main/div[2]/div/div/div[3]/button')))

        time.sleep(1)
        user_field.send_keys(username)
        time.sleep(1)
        pswd_field.send_keys(password)
        
    print('Account creation complete')

字符串

toe95027

toe950271#

代码中的列表逻辑可能存在问题。代码生成随机用户名和密码,然后将它们附加到单独的用户名和密码列表中。但是,当您打印出用户名列表时,代码似乎用相同的用户名填充两个索引,或者在一个和两个相同的用户名之间交替,而密码列表的格式似乎正确

相关问题