Автоматический анализ текста цитирования в академических ссылках

7462
Alistair Knock

Существует ли какое-либо программное обеспечение (или псевдокод), которое может автоматически сканировать фрагмент текста (либо вставленный в инструмент, либо считывать из .doc / .pdf) и идентифицировать данные цитирования с использованием стандартных форматов? Затем данные будут разделены на составляющие поля и экспортированы в XML, CSV или какой-либо другой формат структурированных данных. Я посмотрел на cb2Bib, но он смог извлечь год только из ссылок в стиле Гарварда, что недостаточно.

16
Хотите отсканировать сам текст или просто раздел ссылок? innaM 14 лет назад 0
Только ссылки - это, скорее всего, документ, содержащий личные публикации. Alistair Knock 14 лет назад 0

8 ответов на вопрос

4
KEG

Взгляните на этот список анализаторов цитирования, которые могут генерировать XML из входного текста:

http://freecite.library.brown.edu
http://paracite.eprints.org
http://aye.comp.nus.edu.sg/parsCit (в режиме обслуживания по состоянию на 1 августа 2012 г.)
http: // opcit.eprints.org
http://search.cpan.org/~mjewell/Biblio-Citation-Parser-1.10

С freecite вы можете использовать curlкоманду для отправки цитат следующим образом (в PHP):

$cmd = "curl -H 'Accept: text/xml' -d \"" . $myinput . "\" http://freecite.library.brown.edu/citations/create"; $xmloutput = exec( $cmd ); 
2
Ash

Попробуйте такой инструмент, как Regex Buddy или Expresso .

Если вы не программист, регулярные выражения могут быть немного пугающими, но на самом деле они не так уж и сложны, особенно с помощью достойного инструмента, подобного одному из приведенных выше.

Вот пример использования регулярных выражений для извлечения цитат:

Регулярное выражение синтаксического анализа цитирования

2
Wouter

На данный момент (2017) наиболее активным проектом с открытым исходным кодом, реализующим это, является Anystyle Parser (последняя версия 07-2016). Он может быть использован через веб-интерфейс, API или загружен как RubyGem.

Они прямо упоминают на своем веб-сайте, что реализация основана на ParsCit (последняя версия 2013?) И FreeCite (последняя фиксация 2009).

Также сформируйте их сайт:

AnyStyle Parser использует мощную эвристику машинного обучения, основанную на условных случайных полях, которую каждый может обучить с помощью нашего встроенного редактора.

Это действительно классная функция, которая делает эту реализацию наиболее интересной (imho). Обучение кажется довольно простым, как объясняется в документации по API . Вы просто предоставляете результаты, исправленные вручную, и запускаете Anystyle.parser.trainкоманду. Я не уверен, что ParsCit и FreeCite также поддерживают это, но если они этого не делают, мне кажется, что это огромная разница в возможностях.

За исключением парсера Anystyle, все они упоминаются в ответе, получившем наибольшее количество голосов. Что на самом деле делает их выделиться? Каковы будут преимущества или недостатки с учетом первоначального вопроса? Seth 7 лет назад 0
Ах, действительно. Я отредактирую и улучшу свой ответ. Спасибо за указание на это. Wouter 7 лет назад 0
Похоже, он мертв сейчас. expert 6 лет назад 0
@expert: Он отдыхает :) Я переписывался с разработчиком, пытаясь получить исходный код для компиляции в Windows (работает сейчас). Он планирует дать ему римейк в 2018 году, чтобы добавить новые функции, такие как полнотекстовый анализ документов. Wouter 6 лет назад 0
@ Ваутер, он когда-нибудь давал понять, как его скомпилировать на Windows? Это тоже очень интересно. Brandon 6 лет назад 0
@Brandon: я опубликовал HOWTO здесь: https://github.com/inukshuk/wapiti-ruby/issues/3 Wouter 6 лет назад 1
Это выглядит великолепно, спасибо! Как кто-то, кто никогда не прикасался к рубину, это будет очень полезно. Brandon 6 лет назад 1
1
sblair

Менделей должен быть в состоянии сделать это. Он может импортировать PDF-файлы, а затем экспортировать метаданные в BibTeX, RIS и EndNote XML. Это бесплатно для скачивания и является кроссплатформенным.

Изменить: я проверил это на нескольких документах. Импорт PDF действительно работает хорошо для ссылок, которые правильно отформатированы. Для документа, который я создал с помощью LaTeX, все ссылки с автором в форме «Смит, Дж.» или "Дж. Смит" и т. д. были импортированы в порядке. Если автором является компания (одно слово), или ссылка неполная, она также не работает. Извлеченные ссылки могут быть легко отредактированы и экспортированы в BibTeX и т. Д.

«Эта функция была удалена в Mendeley 0.9.7, потому что она потребляла достаточное количество ресурсов (на стороне клиента и сервера) без предоставления достаточной ценности. Мы планируем повторно представить ее в улучшенном виде в будущем». ...... http://feedback.mendeley.com/forums/4941-mendeley-feedback/suggestions/834313-version-0-9-7-does-not-extract-references-from-the iceman 13 лет назад 2
1
Kaypro II

Я видел программу Westlaw, которая делает это для юридических ссылок, но это, вероятно, не то, что вы ищете. Справочный менеджер может сделать что-то подобное для академических форматов, но я никогда не использовал это.

1
anton

Try http://www.crossref.org/guestquery/#stqsearch

This one is capable of automatic parsing your reference text and offers a link to an on-line article.

0
Abhinav

Zotero - это плагин для Firefox, который делает это для веб-контента. Не уверен, что есть аналогичный инструмент для документов / PDF

Я знаю, что это не совсем то, для чего предназначен Zotero, но если вы указали Firefox на текстовый файл или html-файл с соответствующими данными, Zotero может распознать ссылки, а затем вы можете добавить его в библиотеку Zotero и экспортировать вся библиотека в любом формате, который вам нравится (я знаю, что Zotero поддерживает несколько форматов). Это было бы больно для большого количества файлов, хотя. nedned 14 лет назад 1
Я не понимаю, как Зотеро делает то, что просит ОП. Я установил его, но, кажется, нет возможности разобрать ссылку. Rikki 9 лет назад 0
Zotero анализирует цитаты со специально закодированных сайтов, а не из обычного текста. Ochado 7 лет назад 0
0
Dav Clark

Вероятно, это больше относится к комментарию к @Abhinav, но zotero определенно обрабатывает только структурированные данные, как вы можете найти здесь:

http://www.zotero.org/support/getting_stuff_into_your_library#importing_records_from_other_reference_tools

Интересным хаком может быть попытка написать программу, которая использует каждую цитату в качестве поискового запроса в вашей любимой базе данных, а затем использует что-то вроде zotero для генерации справочной информации. Вы также можете загрузить структурированную информацию из таких сервисов, как citeUlike. Дайте мне знать, если вы закончите что-то подобное! (положите его на github, если вы делаете;).

Похожие вопросы