ComeçarComece de graça

Entidades e extensões

Neste exercício, você vai combinar atributos de extensão personalizados com as previsões do modelo e criar um getter de atributo que retorna uma URL de busca da Wikipedia se o span for uma pessoa, organização ou local.

A classe Span já foi importada e o objeto nlp já foi criado para você.

Este exercício faz parte do curso

NLP Avançado com spaCy

Ver curso

Instruções do exercício

  • Complete o getter get_wikipedia_url para que ele retorne a URL somente se o rótulo do span estiver na lista de rótulos.
  • Defina a extensão 'wikipedia_url' de Span usando o getter get_wikipedia_url.
  • Faça um loop pelas entidades no doc e exiba a URL da Wikipedia de cada uma.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

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(____, ____)
Editar e executar o código