in probe_scraper/runner.py [0:0]
def apply_ping_specific_metadata(metadata, ping_metadata):
"""apply_ping_specific_metadata recurses down into dicts nested
to an arbitrary depth, updating keys. The ``ping_metadata`` is merged into
``metadata``.
:param metadata: dict onto which the merge is executed
:param ping_metadata: dct merged into metadata
:return: None
"""
for k, v in ping_metadata.items():
if (
k in metadata
and isinstance(metadata[k], dict)
and isinstance(ping_metadata[k], dict)
):
apply_ping_specific_metadata(metadata[k], ping_metadata[k])
else:
metadata[k] = ping_metadata[k]