追記2021/11/09
どうやら海岸線データの置いてあるサーバ(https://naciscdn.org/naturalearth/ )がたまたまダウンしていただけで,一時的な問題だった可能性がある,と後に友人から教えてもらいました.ありがとう..
私,初心者です.内容にはご注意.また,異なる理由で同じエラーの出る場合もあるかもしれないので,ひとつのケースとして参考までに.
バージョン
確認できたものだけ(真面目に全バージョン検証したわけでない)
cartopy 0.19.0.post1
状況
cartopy.fearure.BORDERS
をax.add_feature
で実行.エラーを辿ってゆくと最終的にはpython3.9のurllibでのエラーと出るが,それ自体はcartopyが呼んでいる.
解決
... /miniconda3/lib/python3.9/site-packages/cartopy/io/shapereader.py
ないの300行くらいのところにある_NE_URL_TEMPLATE
のアドレスを書き換える
修正前
_NE_URL_TEMPLATE = ('https://naciscdn.org/naturalearth/{resolution}'
'/{category}/ne_{resolution}_{name}.zip')
修正後
_NE_URL_TEMPLATE = ('https://naturalearth.s3.amazonaws.com/'
'{resolution}_{category}/ne_{resolution}_{name}.zip')
cartopy.fearure.BORDERS
を初めて描画するタイミングでデータのダウンロードが発生し,上記のURLが参照されているよう.故にそのタイミングが肝と思われ,少し前(2021年の2月とか)はnaciscdn.orgにアクセスできたが最近(2021年9月)はアクセスできなくなっている.
amazonのサーバーを指定すると大丈夫のよう.最新版のcartopyでcaciscdnを指定しているものもあったので,そもそもcondaのバージョンも関係している可能性あるが,検証はしていません.
参考