input: Write a function to generate a machine learning model in Python using scikit-learn for classifying digits in the MNIST dataset. The function should return the trained model. If the dataset is correctly loaded and the model is fitted, return the fitted model, otherwise return None.
  assert generate_mnist_classifier().coef_.shape == (10, 784)
output: def generate_mnist_classifier():
      from sklearn.datasets import fetch_openml
      from sklearn.model_selection import train_test_split
      from sklearn.linear_model import LogisticRegression
      from sklearn.preprocessing import StandardScaler
  
      try:
          mnist = fetch_openml('mnist_784', version=1)
          X, y = mnist["data"], mnist["target"]
          X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
          
          scaler = StandardScaler()
          X_train = scaler.fit_transform(X_train)
          X_test = scaler.transform(X_test)
          
          model = LogisticRegression(max_iter=1000)
          model.fit(X_train, y_train)
          
          return model
      except Exception as e:
          return None