IniziaInizia gratis

Entità ed estensioni

In questo esercizio combinerai attributi di estensione personalizzati con le previsioni del modello e creerai un getter di attributo che restituisce un URL di ricerca di Wikipedia se lo span è una persona, un'organizzazione o una località.

La classe Span è già importata e l'oggetto nlp è stato creato per te.

Questo esercizio fa parte del corso

NLP avanzato con spaCy

Visualizza il corso

Istruzioni dell'esercizio

  • Completa il getter get_wikipedia_url in modo che restituisca l'URL solo se l'etichetta dello span è nell'elenco delle etichette.
  • Imposta l'estensione di Span 'wikipedia_url' usando il getter get_wikipedia_url.
  • Itera sulle entità in doc e stampa il loro URL di Wikipedia.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

def get_wikipedia_url(span):
    # Get a Wikipedia URL if the span has one of the labels
    if ____ in ('PERSON', 'ORG', 'GPE', 'LOCATION'):
        entity_text = span.text.replace(' ', '_')
        return "https://en.wikipedia.org/w/index.php?search=" + entity_text

# Set the Span extension wikipedia_url using get getter get_wikipedia_url
____.____(____, ____=____)

doc = nlp("In over fifty years from his very first recordings right through to his last album, David Bowie was at the vanguard of contemporary culture.")
for ent in doc.ents:
    # Print the text and Wikipedia URL of the entity
    print(____, ____)
Modifica ed esegui il codice