

# 将交互式会话与 Microsoft Visual Studio Code 配合使用
<a name="interactive-sessions-vscode"></a>

 **先决条件** 
+  安装 AWS Glue 交互式会话并验证其可与 Jupyter Notebook 搭配使用。
+  通过 Jupyter 下载和安装 Visual Studio Code。有关详细信息，请参阅[采用 VS 代码的 Jupyter Notebook](https://code.visualstudio.com/docs/datascience/jupyter-notebooks)。

**开始使用 VS Code 进行交互式会话**

1.  在 VS Code 中禁用 Jupyter AutoStart。

    在 Visual Studio Code 中，Jupyter 内核将自动启动，这将防止您的魔术命令因会话已开启而生效。要在 Windows 上禁用**自动启动**，请前往**文件** > **首选项** > **扩展** > **Jupyter** > 右键单击 Jupyter，然后选择**扩展设置**。

    **在 MacOS 上，请前往**代码** > **设置** > **扩展** > **Jupyter** > 右键单击 Jupyter，然后选择扩展设置**。

    向下滚动直到看到 **Jupyter：禁用 Jupyter 自动启动**。选中标有“如果为 true，则禁止为您自动启动 Jupyter”。You must instead run a cell to start Jupyter（您必须运行一个单元格才能开启 Jupyter）。”   
![\[屏幕截图显示为 VS 代码中 Jupyter 扩展启用的复选框。\]](http://docs.aws.amazon.com/zh_cn/glue/latest/dg/images/IS_vscode_step1.png)

1.  转到 File（文件）> New File（新建文件）> Save（保存）以使用您选择的名称将此文件保存为 `.ipynb` 扩展，或者在 **select a language**（选择语言）下选择 **jupyter** 并保存文件。  
![\[此屏幕截图显示正在使用新名称保存文件。\]](http://docs.aws.amazon.com/zh_cn/glue/latest/dg/images/IS_vscode_step2.gif)

1.  双击文件。系统将显示 Jupyter Shell 并打开笔记本。  
![\[屏幕截图显示打开的笔记本。\]](http://docs.aws.amazon.com/zh_cn/glue/latest/dg/images/IS_vscode_step3.png)

1.  在 Windows 上，您首次创建文件时，默认情况下，其未选择内核。单击 **Select Kernel**（选择内核），此时将显示可用内核的列表。选择 **Glue PySpark**。

    在 MacOS 上，如果您看不到 **Glue PySpark** 内核，请尝试以下步骤：

   1. 运行本地 Jupyter 会话以获取 URL。

      例如，运行以下命令以启动 Jupyter Notebook。

      ```
      jupyter notebook
      ```

      当笔记本首次运行时，您会看到一个如 `http://localhost:8888/?token=3398XXXXXXXXXXXXXXXX` 的 URL。

      复制 URL。

   1. 在 VS Code 中，单击当前内核，然后**选择其他内核...**，然后选择**现有的 Jupyter 服务器...**。粘贴从上述步骤中复制的 URL。

      如果收到错误消息，请查看 [VS Code Jupyter Wiki](https://github.com/microsoft/vscode-jupyter/wiki/Connecting-to-a-remote-Jupyter-server-from-vscode.dev)。

   1. 如果成功，这会将内核设置为 **Glue PySpark**。  
![\[屏幕截图显示突出显示的 Select Kernel（选择内核）按钮。\]](http://docs.aws.amazon.com/zh_cn/glue/latest/dg/images/IS_vscode_step4a.png)

    选择 **Glue PySpark** 或 **Glue Spark** 内核（分别适用于 Python 和 Scala）。  
![\[屏幕截图显示 AWS Glue PySpark 的选项。\]](http://docs.aws.amazon.com/zh_cn/glue/latest/dg/images/IS_vscode_step4b.png)

    如果您在下拉列表中没有看到 **AWS Glue PySpark** 和 **AWS Glue Spark** 内核，请确保您已在上述步骤安装 AWS Glue 内核，或者检查 Visual Studio Code 中的 `python.defaultInterpreterPath` 设置正确无误。有关更多信息，请参阅 [python.defaultInterpreterPath 设置说明](https://github.com/microsoft/vscode-python/wiki/Setting-descriptions#pythondefaultinterpreterpath)。

1.  创建 AWS Glue 交互式会话。继续操作，以您在 Jupyter notebook 中相同的方式创建会话。在第一个单元格的顶部指定任意魔术，并运行代码语句。