Analizar una etiqueta de script con dictos en BeautifulSoup

Trabajando en una respuesta parcial aesta pregunta, me encontré con unbs4.element.Tag eso es un desastre de dictados y listas anidadas (sa continuación).

¿Hay alguna manera de devolver una lista de URL contenida ens sin utilizandore.find_all? Otros comentarios sobre la estructura de esta etiqueta también son útiles.

from bs4 import BeautifulSoup
import requests

link = 'https://stackoverflow.com/jobs?med=site-ui&ref=jobs-tab&sort=p'
r = requests.get(link)
soup = BeautifulSoup(r.text, 'html.parser')

s = soup.find('script', type='application/ld+json')

## the first bit of s:
# s
# Out[116]: 
# <script type="application/ld+json">
# {"@context":"http://schema.org","@type":"ItemList","numberOfItems":50,

Lo que probé:

examinando al azar a través de métodos con finalización de pestaña ens.hurgando en eldocs.

Mi problema es ques solo tiene 1 atributo (type) y no parece tener ninguna etiqueta secundaria.

Respuestas a la pregunta(1)

Su respuesta a la pregunta