使用 python 文件作为另一个文件的数据源

Using python file as the data source for another one

我有下面的代码工作得很好, 我想让 python 文件读取 userpwd 来自另一个文件, 所以如果我想登录任何其他帐户, 我将在不是程序源文件的文件中更改它, 我该怎么做?

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
from selenium.webdriver.support.select import Select
import time
from time import sleep
import os
import sys



user = '.......'
pwd = '........'

driver = webdriver.Chrome()

driver.get('URL')
driver.maximize_window()
main_window = driver.current_window_handle

#wait username
wait_username = WebDriverWait(driver, 60)
wait_username.until(EC.element_to_be_clickable((By.ID,'..........')))

User_Name = driver.find_element_by_id("..........")
User_Name.send_keys(user)

#wait password
wait_password = WebDriverWait(driver, 60)
wait_password.until(EC.element_to_be_clickable((By.ID,'..........')))

Pass_Word = driver.find_element_by_id("..........")
Pass_Word.send_keys(pwd)

我会说实现你想要的最简单的方法是使用 configparser 库。您必须创建一个 ini 文件,其中包含您需要的数据。我们称这个文件为 config.ini

[TestEnv]
user = Zasados
password = qwerty

那么您必须在 Python 代码中读取此文件的内容:

import configparser

config = configparser.ConfigParser()
config.read('config.ini')
default_config = config['TestEnv']
print(default_config['user']) # prints out Zasados
print(default_config['password']) # prints out qwerty

使用这种方法可以让您使用不同的凭据保留不同的部分,然后参数化您的脚本,这样您就不必编辑任何文件。请记住,出于安全原因,您不应在存储库中保留配置文件。