Разбор тега автора LaTex для извлечения имен авторов - PullRequest
0 голосов
/ 11 октября 2018

1.Тег автора:

\author{{\small Tanya Araujo$^{a,b}$ and Elsa Fontainha$^{a}$} \and {\small $^{a}$ISEG
(Lisbon School of Economics \& Management) Universidade de Lisboa, } \and
{\small Rua do Quelhas, 6 1200-781 Lisboa Portugal} \and {\small $^{b}$Research
Unit on Complexity and Economics (UECE)} \and {\small Rua Miguel Lupi, 20
1249-078 Lisboa Portugal}}

\author{{\bf R. Vilela Mendes} \and {\small Grupo de Fisica Matematica, Av.
Gama Pinto 2,} \and {\small \ 1699 Lisboa Codex, Portugal
(vilela@cii.fc.ul.pt)} \and {\bf Tanya Araujo and Francisco Lou\cc\a%
} \and {\small Departamento de Economia, ISEG,} \and {\small R. Miguel Lupi
20, 1200 Lisboa, Portugal} \and {\small (tanya@iseg.utl.pt,
flouc@iseg.utl.pt)}}

2.Удалены специальные символы, другие теги, электронные письма и номера:

Таня Араужо и Эльза Фонтейна ISEG Лиссабонская школа экономики и менеджмента Universidade de Lisboa, Rua do Quelhas, - Лиссабонская исследовательская группа Португалии по сложности и экономике UECEРуа Мигель Лупи, - Лиссабон Португалия

R.Vilela Mendes Grupo de Fisica Matematica, Av.Гама Пинто, Лиссабонский Кодекс, Португалия Таня Араужо и Франсиско Лу Деппартаменто де Экономиа, ISEG, Р. Мигель Лупи, Лиссабон, Португалия,

3.Требуемый вывод: Чтобы извлечь только имена и удалить названия университетов или любые названия мест.Пытался использовать NER из NLTK, но он распознает Universidade и Lisboa как ЧЕЛОВЕКА и т. Д.

(PERSON Tanya/NNP)
  (PERSON Araujo/NNP)
  and/CC
  (PERSON Elsa/NNP Fontainha/NNP)
  ISEG/NNP
  (/(
  (ORGANIZATION Lisbon/NNP School/NNP)
  of/IN
  (ORGANIZATION Economics/NNP)
  &/CC
  Management/NNP
  )/)
  (PERSON Universidade/NNP)
  de/FW
  (PERSON Lisboa/NNP)
  ,/,
  (PERSON Rua/NNP)
  do/VBP
  (PERSON Quelhas/NNP)
  ,/,
  -/:
  (PERSON Lisboa/NNP Portugal/NNP Research/NNP Unit/NNP)
  on/IN
  (ORGANIZATION Complexity/NNP)
  and/CC
  (GPE Economics/NNP)
  (/(
  (ORGANIZATION UECE/NNP)
  )/)
  (PERSON Rua/NNP Miguel/NNP Lupi/NNP)
  ,/,
  -/:
  (PERSON Lisboa/NNP Portugal/NNP Alessandro/NNP Spelta/NNP)
  corresponding/VBG
  author/NN
  :/:
  and/CC
  (PERSON Tanya/NNP Araujo/NNP))

Возможно ли решить эту проблему, используя NER из NLTK, или мы должны попробовать другие библиотеки, такие как spaCy?

1 Ответ

0 голосов
/ 11 октября 2018

Возможно, вы сможете использовать https://github.com/alvinwan/TexSoup,, который будет извлекать элементы автора, например, так:

>>> from TexSoup import TexSoup
>>> soup = TexSoup(open('tri7.txt').read())
>>> for i in soup.find_all('author'):
...     i
...     
\author{{\small Tanya Araujo$^{a,b}$ and Elsa Fontainha$^{a}$} \and {\small $^{a}$ISEG
(Lisbon School of Economics \& Management) Universidade de Lisboa, } \and
{\small Rua do Quelhas, 6 1200-781 Lisboa Portugal} \and {\small $^{b}$Research
Unit on Complexity and Economics (UECE)} \and {\small Rua Miguel Lupi, 20
1249-078 Lisboa Portugal}}

Затем вы можете извлечь строки, примером которых является

{{\small Tanya Araujo$^{a,b}$ and Elsa Fontainha$^{a}$}

в этом случае любым из нескольких способов.Наконец, вы можете удалить такие элементы, как \small и $(a,b)$, используя регулярные выражения, если вы не можете заставить TexSoup сделать это за вас.

...