January 11
Как подключиться к Scopus API с помощью ChatGPT: Подробная инструкция
Эта инструкция поможет вам получить доступ к данным Scopus через API, даже если у вас нет платной подписки. Мы будем использовать ChatGPT для генерации кода и Google Colab для его запуска. Инструкция основана на видео "Пишем код для подключения к Scopus API c помощью ChatGPT" от канала "какая-то библиотека".
Видео: https://youtu.be/8FXFjBlHnME
Семинар Ивана Стерлигова: https://scientometrics.hse.ru/seminar/
Портал для разработчиков Scopus API: https://dev.elsevier.com/sc_search_views.html
Операторы для продвинутого поиска: https://dev.elsevier.com/sc_search_tips.html
Поддержать какую-то библиотеку: https://boosty.to/newsinserity
- Аккаунт Google: Для доступа к Google Colab.
- Аккаунт на сайте Elsevier: Для получения бесплатного ключа Scopus API.
- ChatGPT: Можно использовать бесплатную версию.
Шаг 1: Получаем ключ Scopus API
- Перейдите на сайт developer.elsevier.com.
- Зарегистрируйтесь (можно использовать аккаунт ВК) или войдите в свой личный кабинет, если он у вас уже есть.
- Перейдите в раздел "My API Key" (или "Мои API ключи").
- Нажмите "Create API Key" (или "Создать API ключ").
- Введите название для ключа (например, "ScopusKeyForResearch"). Это название будет отображаться в вашем профиле на сайте Elsevier.
- Поставьте галочку, соглашаясь с условиями использования.
- Нажмите кнопку "Submit".
- Скопируйте сгенерированный ключ. Он понадобится нам позже. Важно: не закрывайте сразу страницу с ключом, так как он отображается только один раз.
Шаг 2: Настраиваем Google Colab
- Перейдите в Google Colab.
- Создайте новый блокнот, нажав "New Notebook" (или "Новый блокнот").
Шаг 3: Используем ChatGPT для генерации кода
- Перейдите в ChatGPT.
- Если у вас платная версия: можете выбрать специализированного бота "Python" в разделе "Explore GPTs" для лучшего результата. Если у вас бесплатная версия: не страшно, обычный ChatGPT тоже справится.
- Введите следующий запрос (или аналогичный):
Напиши мне код для запуска в Google Colab. Код должен по API подключаться к Scopus, осуществлять поиск по ключевым словам "ваши ключевые слова" и выводить результаты в виде Excel таблицы.
content_copydownloadUse code with caution. - Замените "ваши ключевые слова" на ваши реальные ключевые слова.
- Рекомендация: Сразу добавьте запрос на добавление столбца с количеством цитирований:
Напиши мне код для запуска в Google Colab. Код должен по API подключаться к Scopus, осуществлять поиск по ключевым словам "ваши ключевые слова" и выводить результаты в виде Excel таблицы с указанием количества цитирований для каждой статьи.
content_copydownloadUse code with caution. - ChatGPT сгенерирует код и, возможно, команду для установки необходимых библиотек.
Шаг 4: Запускаем код в Google Colab
- Установка библиотек (если требуется):
- Скопируйте команду для установки библиотек из ChatGPT (обычно это !pip install pandas openpyxl).
- Вставьте ее в первую ячейку кода в Google Colab.
- Запустите ячейку, нажав на значок "Play" слева от ячейки. Дождитесь завершения установки.
- Вставляем код:
- Вставляем API ключ:
- Найдите в коде строку, похожую на api_key = "YOUR_API_KEY".
- Замените YOUR_API_KEY на ваш скопированный ключ Scopus API (из Шага 1, пункт 8). Внимание: Вставляйте ключ без пробелов в начале и в конце.
- Меняем ключевые слова (если нужно):
- Найдите в коде параметр query.
- Замените текст в кавычках на ваши ключевые слова.
- Рекомендация: Используйте оператор TITLE для поиска по названию статьи (например, query = 'TITLE("artificial intelligence")').
- Для фильтра по году: используйте параметр date (например, query = 'TITLE("artificial intelligence") AND date=2023'). Подробнее о составлении запросов - в разделе "Дополнительные возможности".
- Изменяем количество результатов (опционально):
- В коде может быть параметр count, ограничивающий количество выводимых результатов (обычно count=25).
- Можете изменить его на большее значение, например, count=50. Важно: Не ставьте слишком большое значение, чтобы избежать проблем с подключением.
- Примечание: В видео был обнаружен баг с параметром count, из-за которого код не работал. Если после изменения этого параметра код перестал работать, попробуйте вернуть значение по умолчанию.
- Запускаем код:
Шаг 5: Работаем с результатами
- После выполнения кода в левой панели Google Colab (в разделе "Files" или "Файлы") должен появиться файл в формате .xlsx.
- Скачайте файл, нажав на три точки справа от названия файла и выбрав "Download" (или "Скачать").
- Откройте скачанный файл в Excel или другом редакторе таблиц. В нем будут результаты поиска по вашему запросу.
Дополнительные возможности (обсуждаем с ChatGPT):
- Добавить количество цитирований: Если вы не сделали этого сразу в запросе к ChatGPT, попросите его позже: "Сделай так, чтобы в результатах поиска выводилось еще количество цитирований". ChatGPT обновит код.
- Добавить фильтр по году: Спросите ChatGPT: "Как добавить фильтр по году в запрос?". Он подскажет, как использовать параметр date (например, date=2023 или date=2020-2023).
- Использовать оператор TITLE: Для более точного поиска по ключевым словам в названии статьи используйте оператор TITLE (например, TITLE("ключевое слово")).
- Другие операторы и фильтры: Ознакомьтесь с документацией Scopus API или спросите у ChatGPT о других возможностях составления поисковых запросов (например, поиск по автору, аффилиации, типу документа и т.д.). Помните, что любой запрос вы можете протестировать на странице "Search" в личном кабинете developer.elsevier.com в разделе "Scopus APIs".
- Ошибки в коде: Если код не запускается, скопируйте текст ошибки и отправьте его ChatGPT с просьбой исправить. ChatGPT предложит обновленный код. Вставляйте обновления строк кода, а не весь код, как советует автор в видео, чтобы не запутаться.
- Пустой результат: Проверьте правильность API ключа (отсутствие пробелов), ключевых слов и фильтров. Попробуйте упростить запрос. Убедитесь, что по вашему запросу в Scopus есть статьи.
- Проблемы с подключением: Если вы видите сообщение об ошибке, связанное с подключением, возможно, вы сделали слишком много запросов за короткий промежуток времени. Подождите немного и попробуйте снова.