Acessando sites automaticamente com json

Olá, pessoal. Estou criando um aplicação em python usando a lib selenium que acessa sites automaticamente e faz login neles. Atualmente os sites, login e senha estão especificados no código.
É possível listar os sites em um arquivo json? Mas o login e senha são pedidos ao usuário é possível colocar login e senha no json sem cair no erro do hard coded?

Sim, é absolutamente possível armazenar a lista de sítios Web num ficheiro JSON e solicitar as credenciais de início de sessão ao utilizador de forma dinâmica em tempo de execução.

Exemplo:

import json
from selenium import webdriver
from selenium.webdriver.common.by import By

def load_websites():
    with open('sites.json', 'r') as file:
        data = json.load(file)
    return data['websites']


def get_credentials():
    username = input("Enter your username: ")
    password = input("Enter your password: ")
    return username, password

def automate_login(site, username, password):
    driver = webdriver.Chrome()  # Ensure you have the right driver installed

    driver.get(site['url'])

    driver.find_element(By.NAME, "username").send_keys(username)
    driver.find_element(By.NAME, "password").send_keys(password)
    driver.find_element(By.NAME, "submit").click()

def main():
    websites = load_websites()

    print("Available websites:")
    for idx, site in enumerate(websites, 1):
        print(f"{idx}. {site['name']}")

    choice = int(input("Select a website to login to (enter number): ")) - 1

    selected_site = websites[choice]

    username, password = get_credentials()

    automate_login(selected_site, username, password)

if __name__ == "__main__":
    main()