Ваши метрики цитирования в SVG для вашего сайта

Python пакет bibliometrics, исходный код которого находится на GitHub и доступен для установки из PyPI, представляет собой утилиту командной строки, реализованную на 100% на Python, которая извлекает общие библиометрические показатели (общее количество цитирований, h-индекс, i10-индекс) из профиля Google Scholar исследователя, вычисляет другие (g-индекс, i100-индекс, i1000-индекс) с первой страницы его профиля и генерирует SVG, суммирующую метрики, которые затем могут быть отображены в списке публикаций на его сайте. Вот пример (цвета настраиваются пользователем) того, что получается при наведении на мой профиль Scholar:

Предполагаемый вариант использования — мониторинг исследователем собственных публикаций. Например, в настоящее время я запускаю это в cron-задании дважды в месяц (возможно, достаточно и одного раза в месяц). Он разработан с учетом этого сценария использования. Он также разработан с учетом текущего robots.txt Google Scholar, который в настоящее время разрешает доступ к первой странице профиля, но запрещает практически все остальное. У него нет зависимостей, и он не использует ни одну из существующих библиотек Python, которые собирают данные Scholar. Это не инструмент для более общего сбора таких данных. Если вы ищете более общую функциональность для сбора данных, вы можете найти несколько таких библиотек Python в PyPI.

Этот пост организован следующим образом:

  • Поддерживаемые метрики цитирования: объясняет поддерживаемые библиометрические показатели, а также почему они включены.
  • Как использовать
    • Установка из PyPI
    • Настройка
    • Запуск
  • Информация для потенциальных соавторов
  • Где вы можете найти меня

Поддерживаемые метрики цитирования

Это приложение поддерживает следующие библиометрические показатели:

  • Общее количество цитирований.
  • Общее количество цитирований за последние 5 лет.
  • Количество ссылок на самую цитируемую статью.
  • h-индекс: h-индекс, равный h, означает, что h наиболее цитируемых статей исследователя были процитированы минимум h раз каждая.
  • g-индекс: g-индекс, равный g, означает, что g наиболее цитируемых статей исследователя были процитированы в среднем g раз каждая.
  • i10-индекс: i10-индекс исследователя — это количество его статей, процитированных не менее 10 раз.
  • i100-index, i1000-index, i10000-index: Эти показатели похожи на i10-индекс, но вместо этого они представляют собой количество статей, процитированных не менее 100 раз, 1000 раз и 10000 раз соответственно.

Почему именно эти метрики цитирования для данного приложения?

Некоторые из них могут быть извлечены из профиля исследователя в Google Scholar напрямую, соблюдая при этом robots.txt Scholar. Другие (g-index, i100-index, i1000-index, i10000-index), также соблюдая требования Scholar robots.txt, можно рассчитать, используя только первую страницу (100 лучших публикаций) профиля Google Scholar исследователя (при условии, что метрика не более 100). Любые из них, для вычисления которых требуется получить больше, чем первая страница результатов, приложение просто пропускает. Например, если g-индекс исследователя на самом деле равен 105, приложение не сможет его вычислить, поскольку оно может получить только список 100 лучших публикаций этого исследователя, не нарушая robots.txt Scholar, и поэтому в создаваемом SVG просто не будет показан g-индекс.

Как использовать

Установка из PyPI

Для установки из PyPI:

python3 -m pip install bibliometrics
Войдите в полноэкранный режим Выйдите из полноэкранного режима

Или в Windows:

py -m pip install bibliometrics
Войдите в полноэкранный режим Выйти из полноэкранного режима

Конфигурирование

Вы конфигурируете утилиту с помощью JSON-файла. Файл конфигурации JSON должен иметь имя .bibliometrics.config.json. . в начале — это не опечатка. Его обоснование — это мой личный случай использования, когда я запускаю его в директории, содержащей содержимое сайта GitHub Pages, а GitHub Pages по умолчанию не обслуживает файлы с именами, начинающимися с .. Вот пример конфигурации (пояснение следует далее):

{
    "scholarID": "YOUR-SCHOLAR-ID-HERE",
    "jsonOutputFile": "bibliometrics.json",
    "svgConfig": [
        {
            "background": "#010409",
            "border": "rgba(56,139,253,0.4)",
            "filename": "images/bibliometrics2.svg",
            "text": "#c9d1d9",
            "title": "#58a6ff"
        },
        {
            "background": "#f6f8fa",
            "border": "rgba(84,174,255,0.4)",
            "filename": "images/bibliometrics.svg",
            "text": "#24292f",
            "title": "#0969da"
        }
    ]
}
Войти в полноэкранный режим Выйти из полноэкранного режима

Приведенный выше пример настраивает утилиту bibliometrics на генерацию двух SVG-файлов, один из которых имеет светлую цветовую тему, а другой — темную. Поле "svgConfig" можно использовать для настройки такого количества SVG, которое вы хотите сгенерировать (все для одного и того же Scholar ID). Если вам нужен только один SVG, просто укажите в нем список с одним объектом JSON, описывающим различные свойства цвета. Поля text, title, border и background могут быть заданы любым допустимым методом определения цвета в SVG, таким как 6-значные hex-цвета (большинство цветов в примере), 3-значные hex-цвета, rgba (см. пример), а также именованные цвета. Если этот цвет допустим в SVG, его можно использовать. Утилита bibliometrics просто вставляет его для цвета.

Поле "jsonOutputFile" является необязательным. Если оно указано, то в дополнение к генерации SVG будет создан файл JSON, содержащий извлеченные и вычисленные библиометрические данные.

Вы можете указать свой Scholar ID одним из двух способов. В приведенном выше примере используется поле "scholarID". В качестве альтернативы утилита библиометрии также проверит наличие переменной окружения SCHOLAR_ID. Один идентификатор ученого используется независимо от того, сколько SVG вы генерируете. Это приложение предназначено для использования исследователем для получения собственных библиометрических данных, и одним из критериев проектирования было сделать его неудобным в использовании для получения библиометрических данных для нескольких исследователей.

Запуск

После завершения настройки измените рабочий каталог на каталог, содержащий файл .bibliometrics.config.json, и выполните следующие действия:

python3 -m bibliometrics
Войти в полноэкранный режим Выйти из полноэкранного режима

Или в Windows:

py -m bibliometrics
Войти в полноэкранный режим Выйти из полноэкранного режима

Информация для потенциальных авторов

Пакет bibliometrics лицензируется по лицензии MIT. Исходный код поддерживается на Github здесь:

cicirello / bibliometrics

Обобщение библиометрических данных Google Scholar в SVG

bibliometrics

Пакеты и релизы
Статус сборки
Безопасность
Информация об источнике
Поддержка

Эта утилита командной строки делает следующее:

  • извлекает первую страницу вашего профиля Google Scholar;
  • анализирует с этой страницы ваше общее количество цитирований, количество цитирований за пять лет, ваш h-индекс, ваш i10-индекс и количество цитирований вашей самой цитируемой статьи;
  • вычисляет ваш g-индекс, если он меньше 100 (причина ограничения будет описана позже);
  • вычисляет ваши i100-индекс, i1000-индекс и i10000-индекс (doi:10.1007/s11192-020-03831-9), скрывая те из них, которые равны 0, и при условии, что они меньше 100 (причина ограничения — позже);
  • генерирует JSON-файл, суммирующий эти библиометрические данные; и
  • генерирует одно или несколько SVG-изображений, суммирующих эти библиометрические данные.

Эта утилита предназначена для того, чтобы исследователь мог генерировать SVG только своих библиометрических данных. Например, я использую ее для создания и обновления такого SVG для своего собственного профиля два раза в месяц…

Посмотреть на GitHub

Если вы заинтересованы в подаче проблем или внесении кода, любые предлагаемые новые возможности должны быть реализуемы при соблюдении robots.txt Scholar. Это в основном означает ограничение на то, что может быть извлечено или вычислено с первой страницы профиля (до первых 100 публикаций). Кроме того, предлагаемые новые функции не должны быть направлены исключительно на облегчение работы с несколькими профилями. Например, использование конфигурационного файла (с ограничением в один идентификатор ученого) вместо аргументов командной строки заведомо делает его менее удобным (хотя и не невозможным) для использования в рамках скрипта, обрабатывающего несколько профилей. Имя конфигурационного файла и его расположение относительно текущего рабочего каталога не настраиваются по той же причине.

Где меня можно найти

Вы можете найти меня в Интернете:

Винсент А. Чичирелло — профессор компьютерных наук

Винсент А. Чичирелло — профессор компьютерных наук в Стоктонском университете — исследователь в области искусственного интеллекта, эволюционных вычислений, роевого интеллекта и вычислительного интеллекта, доктор философии по робототехнике в Университете Карнеги-Меллон. Он является старшим членом ACM, старшим членом IEEE, пожизненным членом AAAI, заслуженным членом EAI и членом SIAM.

cicirello.org

Здесь, на DEV:

Винсент А. Чичирелло

Исследователь и преподаватель в области А.И., алгоритмов, эволюционных вычислений, машинного обучения и роевого интеллекта.

На GitHub:

cicirello / cicirello

Мой профиль на GitHub

Vincent A Cicirello

Сайты, где вы можете найти меня или мою работу
Веб и социальные сети
Разработка программного обеспечения
Публикации

Если вы хотите сгенерировать эквивалент вышеуказанного для своего профиля на GitHub, ознакомьтесь с действием cicirello/user-statisticianGitHub.

Посмотреть на GitHub

Оцените статью
devanswers.ru
Добавить комментарий