打开Notebook并确保内核设置为SparkMagic PySpark
:
可以通过运行以下命令检查当前笔记本会话配置:
%%info
将得到以下输出:
检查EMR集群上已有的库。使用 list_packages()
PySpark API 来执行此操作,该 API 列出了集群上的所有 Python 库:
sc.list_packages()
获得类似于以下代码的输出,显示集群上所有可用的 Python 3 兼容库:
里面没有selenium
库,可以使用 install_pypi_package
API 将它们安装在EMR集群上:
其他安装库的语法:
sc.install_pypi_package("pandas==0.25.1") #Install pandas version 0.25.1
sc.install_pypi_package("matplotlib", "https://pypi.org/simple") #Install matplotlib from given PyPI repository
再次执行sc.list_packages()
,将看到selenium被安装上去:
PySpark install_pypi_package
API 会安装所需的库以及关联的依赖项。默认情况下,它会安装与正在使用的 Python 版本兼容的最新版本的库。还可以通过指定前面的 Pandas 示例中的库版本来安装特定版本的库。
使用uninstall_package
Pyspark API 卸载使用该install_package
API 安装的库。当想要使用之前通过Notebooks 安装的库的不同版本时,这非常有用:
sc.uninstall_package('selenium')
将得到以下输出:
关闭笔记本后,使用install_pypi_package
API 在集群上安装的 Pandas 和 Matplot 库将成为垃圾并从集群中收集。
本地执行bash命令,使用%%sh
或%%bash
:
查看本地所有的python包:
查看所有magic命令:
其他命令参考: https://ipython.readthedocs.io/en/stable/interactive/magics.html