不具合

ArcGIS Online Jupyter Notebooks での HTTPS/HSTS 設定の修正

Last Published: February 10, 2021

説明

MapView ウィジェットは、Jupyter Notebook 内で実行された場合に、ArcGIS Pro 内でホストされている Jupyter Notebook に表示できません。 ArcGIS API for Python は、マップ、空間データなどを視覚化できる対話形式のマップ ウィジェットを含んでいます。 マップ ウィジェットは、通常、gis.map()、arcgis.widgets.MapView()、およびarcgis.mapping.WebMap() を介して作成されます。

HTTP を経由してコンピューター上で Jupyter Notebook を実行する場合、対話形式のマップ ウィジェットは、一部のブラウザーに適切に読み込まれません。 このマップ ウィジェットは、HSTS 規格 (HTTPS のみ) を最近施行した js.arcgis.com から ArcGIS API for JavaScript を読み込みます。 BUG-000136038 は、この問題に関連しています。

下の図は、ArcGIS Pro でエラーを表示している Jupyter Notebook MapView() ウィジェットを示しています。

ArcGIS Pro でエラーを表示している Jupyter Notebook MapView ウィジェットの画像

原因

Python API for Python は、更新後に機能しなくなった HTTP URL にリダイレクトします。

対処法

前述したエラーなどのエラーが発生した場合、ArcGIS API for Python をバージョン 1.8.4 に更新します。 このバージョンは、マップ ウィジェットが描画されないことに対する修正を含んでいます。

Python パッケージ マネージャーを使用して arcgis パッケージをアップグレードするには、以下を実行します。

  1. ArcGIS Pro で、新しい空のプロジェクトを開きます。
  2. 下のスクリーンショットに示されているように、[プロジェクト] タブを選択して ArcGIS Pro のバックステージにアクセスします。
  3. [Python] メニュー オプションを選択します。
  4. [プロジェクト環境] の [環境の管理] オプションおよび [デフォルトのクローン] を使用します。
  5. クローンが作成されたら、適切な環境を選択して ArcGIS Pro を再起動します。
  6. Python のメニューに戻り、[パッケージの更新] オプションを選択します。
  7. 最近の更新を含むパッケージのリストから適切な ArcGIS のリリースを選択するか、[すべて更新] を選択します。

パッケージのリストを示している Python プロジェクト環境

  1. [インストール済みパッケージ] を更新し、バージョン 1.8.4 がインストールされていることを確認します。パッケージのバージョンを示している更新された Python プロジェクト環境

現在、次のマップ ウィジェットが表示されています。

ノートブックでのマップ ウィジェット

注意: この記事の以前のバージョン、および ArcGIS API を更新する前の時点では、Esri はウィジェットを確実に描画するためのいくつかの回避策を推奨していました。 以前の回避策のいずれかを使用していた場合、それらを必ず元に戻してください。
  • バージョン 1.8.1 以上の ArcGIS API を使用していて、環境変数 JSAPI_CDN を https://js.arcgis.com/4.15/ にすでに設定している場合、この変数を必ず削除してください。
  • 以下のコードを使用して、ノートブックの先頭で環境変数を設定している場合、この環境変数を必ず削除してください。
import os os environ['JSAPI_CDN'] = 'https://js.arcgis.com/4.15/'
  • Windows システム プロパティを使用して JSAPI_CDN 変数をシステムまたはユーザー環境変数に追加している場合は、この変数を削除します。
  • バージョン 1.5.0 ~ 1.8.0 の ArcGIS API を使用しており、以下のコードを使用して MapView の js_cdn プロパティを https://js.arcgis.com/4.15/ に設定している場合、このプロパティを必ず削除してください。
from arcgis.widgets import MapView MapView.set_js_cdn('https://js.arcgis.com/4.15/')

Python API の古いバージョンに関する注意

Python API の異なるバージョンは、JS API の異なるバージョンを対象にします。 古いバージョンの Python API で実行している場合は、JS API CDN を正しいバージョンに設定します。 次の表をご参照ください。 次のスクリプトは、インストールされている Python API のバージョンを表示します。

import arcgis arcgis.__version__
Python API のバージョンJS API のバージョン
1.8.44.15
1.8.34.15
1.8.24.15
1.8.14.15
1.8.04.14
1.7.14.13
1.7.04.13
1.6.24.11
1.6.14.11
1.6.04.10
1.5.24.9
1.5.14.8
1.5.04.8

記事 ID:000024831

ArcGIS の専門家からヘルプを受ける

テクニカル サポートへのお問い合わせ

Esri Support アプリのダウンロード

ダウンロード オプションに移動

関連情報

このトピックについてさらに調べる