diff --git a/codearchiver/core.py b/codearchiver/core.py index a1e6f0d..242c4b6 100644 --- a/codearchiver/core.py +++ b/codearchiver/core.py @@ -383,7 +383,8 @@ class Module(metaclass = ModuleMeta): self._storage = storage self._id = id_ if self._id is None and type(self).name is not None: - self._id = f'{type(self).name}_{self._url.replace("/", "_")}_{datetime.datetime.utcnow():%Y%m%dT%H%M%SZ}' + mangledUrl = self._url.replace('/', '_').replace('?', '_').replace('&', '_').replace('#', '_') + self._id = f'{type(self).name}_{mangledUrl}_{datetime.datetime.utcnow():%Y%m%dT%H%M%SZ}' self._httpClient = HttpClient() @abc.abstractmethod