Try the Classic Story Conversion Helper

2717
10
02-27-2023 02:58 PM
AbbyE_Esri
Esri Contributor
5 10 2,717

UPDATE: This converter now also supports classic stories made with the cascade template! Check out this post for updated caveats and support for this tool.

If you attended the 2023 Federal GIS Conference earlier this month, you may have seen a sneak peak of an experimental tool that can help convert a story originally created in a classic Esri Story Maps templates to one created in ArcGIS StoryMaps. We know it can take some work to recreate a classic story, so we wanted to make this easier by providing a tool to reduce some of the work involved. This tool comes in the form of an ArcGIS Python Notebook: https://www.arcgis.com/home/item.html?id=bc35e93d5d374e1a9c3583be0cc9f1d7

What does it do?

There are instructions in the notebook for each step, but essentially you add your classic story ID, optionally reference a theme for the new story, and run the notebook script. The tool is easy to use and will not affect your original classic story.

A draft ArcGIS StoryMap will be created that contains the text, media, and maps from your original classic story. The title of the story will be brought over and the content from each section will be added to individual slides of a sidecar.

Here's a before and after example of a classic story and the ArcGIS StoryMaps version so you can see the results of running the tool.

Considerations

A few things to be aware of…

  • This tool currently supports migration of content from some classic Series and Journal stories (We now also support Cascade stories! Check this link for more information). You may have varying levels of success migrating a specific classic story depending on the amount and type of content in the story and if you made any customizations to it.

  • The notebook is meant to provide a starting point. It will help migrate your content to a new story. After that is done, you can expect to have to do some additional work to finalize your story after running the notebook.

  • Once the new story has been created, you can access all the images from the “This story” tab when adding media. This can help if you want to move media around to different places in your story.

  • Please ensure your ArcGIS administrator has assigned you permissions to access ArcGIS Notebooks, otherwise you will be unable to open the Notebook. For more information, see Control notebook user privileges—ArcGIS Notebook Server | Documentation for ArcGIS Enterprise.

  • If you don’t have privileges to use ArcGIS Notebooks, you can download the notebook and run it in a system configured with ArcGIS API for Python. Be sure to add your username and password (and portal URL if running on ArcGIS Enterprise) to the script where indicated. For information on running the notebook locally, see Get started | ArcGIS API for Python

Help us improve this tool

Please note that this isn’t a supported product; it’s a tool that’s provided as-is that can help save you time and effort in some situations. We are not planning to make regular additions or updates to this tool, but if there is enough generated interest in any particular enhancements to the Notebook, we will consider adding new capability in the future when feasible.

We hope the migration helper notebook can be a source of collaboration within the community. If you find items within the script that are not functioning as expected or could be improved, feel free bring up these concerns in the comments below. We hope that community members will work to improve the tool and build on it.

Let us know what you think

We’d love to hear your feedback about this tool in the comments section below! While it’s not able to magically convert every classic story you have, we do believe the notebook will greatly reduce the time required to remake some of the stories you’re looking to update to ArcGIS StoryMaps.

Resources

Below are some additional resources to help you get started with this Notebook and ArcGIS API for Python:

10 Comments
SadieSchoeffler
New Contributor

Thank you for sharing this tool. Will there be a conversion helper for Cascade Maps?

OwenGeo
Esri Notable Contributor

@SadieSchoeffler -- We are considering adding support for Cascade stories, but it will require a bit of additional effort. We'd like to get more feedback from the community on whether the current tool has been useful before spending time on adding new capabilities.

For anyone who has used this tool, what was your process for recreating your story and how was this notebook/script helpful? Did you encounter any issues or limitations? Do you have links you could share of the classic and recreated stories?

MarkusRasmusson
New Contributor

@OwenGeoWe still have many classic story maps that we need to migrate to ArcGIS StoryMaps, so this tool would be very helpful. However, when I run the script in ArcGIS Online I get the following error under imports:

ImportError: cannot import name 'Scales' from 'arcgis.apps.storymap' (/opt/conda/lib/python3.9/site-packages/arcgis/apps/storymap/__init__.py)

What causes this error? Am I missing something important?

ThePreatorian
Esri Contributor

@MarkusRasmusson  the Scales class for the StoryMaps module was added in the latest python API release. To fix this issue ensure the notebook you are using has the latest arcgis version installed, please run the last cell in the notebook before running any other cells.

If you want to confirm the correct version is installed in your notebook environment, add another cell to the notebook with the following code.

 

!conda list arcgis

 



When you run the code you should see the following output indicating v2.1.0.3 was successfully installed

ThePreatorian_0-1682685192473.png

 



MarkusRasmusson
New Contributor

@ThePreatorianThanks! It worked perfectly now. Thought I updated it before, but apparently not...

OwenGeo
Esri Notable Contributor
NickWeil
New Contributor III

Hello,

I just upgraded my ArcGIS Enterprise from 10.9 to 11.1 and had not realized that I had a Classic Story Map application hosted in my Portal. I was trying to use the converter to restore the application, but keep getting this error: 

File C:\Program Files\ArcGIS\Pro\bin\Python\envs\arcgispro-py3\lib\urllib\request.py, in http_error_default:
Line 641:   raise HTTPError(req.full_url, code, msg, hdrs, fp)

HTTPError: HTTP Error 404: Not Found

 

OwenGeo
Esri Notable Contributor

@NickWeil -- Our team's python wizard is not available for a few days, but to me it looks like either Python, or a required module, is not installed on the machine you are trying to run the script.

If you need an immediate answer, please post on the Python questions board and I bet someone there should be able to help with this.

ThePreatorian
Esri Contributor

@NickWeil Have you been able to resolve the issue you have encountered with the converter? 

From the error it looks like the URL request is failing for a resource in your Classic Story. Do you know if the images in your classic story are being hosted in your enterprise server as items?


NickWeil
New Contributor III

@ThePreatorian Unfortunately, I am not a python person, so I quickly abandoned the tool and started in to converting my story map manually. I just looked and my header does reference a logo that is published to my Portal.