alterlab-dergipark について
alterlab-dergiparkは、TÜBİTAK ULAKBİMのジャーナルプラットフォームDergiParkから、メタデータや論文ファイルを再現可能な方法で取得するスキルです。ジャーナル記録、引用情報、PDF、対象範囲を必要とする研究者向けに、認証チャレンジのある検索ページではなくOAI-PMHと論文ページを利用します。
主な機能
- 01OAI-PMHによるジャーナル記録の収集
- 02論文メタデータをBibTeXまたはRISに変換
- 03論文PDFリンクの取得
- 04ジャーナルの目的と対象範囲の確認
- 05自己申告の収載リストの参照
活用シーン
- 01ジャーナルの論文アーカイブを収集
- 02論文の引用情報をBibTeXまたはRISで出力
- 03DergiParkの論文PDFを取得
- 04ジャーナルの対象範囲と申告済み収載情報を確認
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ alterlab-ieu/ alterlab-academic-skills --skill alterlab-dergiparkインストール後、Claude Code で/alterlab-dergiparkを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
evals/evals.jsonreferences/endpoints.mdindexing.mdoai-cookbook.mdscripts/article_meta.pydergipark_oai.pyjournal_info.py詳細
DergiPark — 全国学術誌ハーベスター(TÜBİTAK ULAKBİM)
DergiPark(https://dergipark.org.tr)は、**TÜBİTAK ULAKBİMの全国学術誌ホスティングプラットフォームです。OJSベースのインフラ上で、3,000誌以上のトルコの学術誌を提供しています(ホームページによると、2026-09時点)。このスキルは、プラットフォーム全体で利用できる唯一の安定した機械向けインターフェースであるOAI-PMH**(Open Archives Initiative Protocol for Metadata Harvesting)エンドポイントと、公開されている論文ページを経由して、メタデータ、要旨、全文PDFを再現可能な方法で収集します。書誌データを推測することはありません。すべてのフィールドは稼働中のエンドポイントから取得し、解析したメタタグからローカルでBibTeX/RISを生成します。
対話型検索ページは人間による認証チャレンジで保護されているため、このスキルは通常のHTTPで検索ページをスクレイピングしません。OAIセットのハーベストと論文ページへの直接アクセスが堅牢な方法です(references/oai-cookbook.mdを参照)。
このスキルを使う場面
リクエストがDergiParkからのデータ取得に関する場合に使用します。
- トルコの(DergiPark上の)学術誌に掲載された全論文を収集/取得する
- 学術誌のアーカイブ一覧を表示する、またはそのスラッグを調べる
- DergiParkの論文のBibTeXまたはRIS(エクスポート形式)を取得する
- DergiParkの論文全文PDFをダウンロードする
- 学術誌の目的と対象範囲(öz/kapsam — 要旨/対象範囲)または自己申告の収録インデックス一覧を読む
目にする可能性のある標準的なトルコ語用語:öz(要旨)、kapsam(対象範囲)、dergi(学術誌)、künye(引用情報/誌面の書誌情報)。ユーザー向けの文字列では、トルコ語の綴りとダイアクリティカルマークを保持してください(例:Mülkiye Dergisi)。
該当しない場合 — 関連するリクエストは適切な姉妹スキルに振り分けてください
| 実際のリクエスト内容… | 振り分け先 |
|---|---|
| 学術誌がTR Dizin(国内引用索引)に収録されているかどうか/そのTR Dizinのステータス | alterlab-trdizin |
| 大学院論文(YÖK Ulusal Tez Merkezi)を見つける/検索する | alterlab-yok-tez |
| 研究者のプロフィール/所属(YÖK Akademik) | alterlab-yok-akademik |
| 大学のプログラム入学統計(YÖK Atlas) | alterlab-yokatlas |
| doçentlik(准教授資格)の適格性ポイントを計算する | alterlab-docentlik-eligibility |
| akademik teşvik(学術奨励)スコアを計算する | alterlab-akademik-tesvik |
| 原稿/データをAperta(TÜBİTAKオープンアーカイブ)に登録する | alterlab-aperta |
| 引用文献が実在することの検証/ハルシネーション監査 | alterlab-citation-verifier |
| トルコ語APA/TR Dizinの文体規則 | alterlab-tr-academic-style |
仕組み — 3つのスクリプト
すべてスキルディレクトリからuv run pythonで実行します。APIキーは不要です。requestsがインストールされていればそれを優先して使用し、なければ標準ライブラリのurllibにフォールバックします。詳しい手順と注意点はreferences/oai-cookbook.md、検証済みのエンドポイント一覧はreferences/endpoints.mdにあります。
1. scripts/dergipark_oai.py — OAIハーベスト(主要な方法)
# The slug (== OAI setSpec) is in the journal URL: dergipark.org.tr/en/pub/{slug}
# list-journals only sees the first 100 sets — ListSets stopped paging (2026-09-23)
uv run python scripts/dergipark_oai.py list-journals --tsv | rg -i "mülkiye"
# Harvest a whole journal (follows resumptionToken paging automatically)
uv run python scripts/dergipark_oai.py harvest mulkiye --prefix oai_dc --out mulkiye.json
# One article's structured oai_dc record
uv run python scripts/dergipark_oai.py get 10 --prefix oai_dc
動詞:Identify / ListSets / ListRecords / GetRecord。プレフィックス:
oai_dc(クリーンなフィールドに解析)およびoai_mods / oai_marc / oai_etdms
(より豊富なスキーマを必要とする呼び出し元向けに、生のレコードXMLを返します)。
2. scripts/article_meta.py — 論文1件 → BibTeX/RIS
uv run python scripts/article_meta.py /en/pub/mulkiye/article/10 --format bibtex
uv run python scripts/article_meta.py /en/pub/mulkiye/article/10 --format ris
uv run python scripts/article_meta.py /en/pub/mulkiye/article/10 --format json
ページのcitation_*とDC.*メタタグを解析し、ローカルでBibTeX/RISを整形します。サイト上のエクスポート用バックエンドは呼び出しません(その経路は未検証です)。JSON出力には解決済みのpdf_urlが含まれます。
3. scripts/journal_info.py — 目的と対象範囲 + 自己申告インデックス
uv run python scripts/journal_info.py mulkiye --lang en
目的と対象範囲のテキストと/indexesページを返します。後者にはDISCLAIMERと、TR DizinおよびDOAJとの照合先が付記されています。
誤回答を防ぐ3つのルール
- 出版日 ≠ OAI datestamp。 OAI の
<datestamp>はプラットフォームでの 再インデックス 時刻であり、出版日ではありません。出版年で絞り込むには、 ハーベストしてからローカルでdc:dateを使ってフィルタリングしてください。from/untilに頼らないでください。 - PDF の ID ≠ 論文の ID。 ページの
citation_pdf_urlメタタグから PDF のリンクを取得してください(例:論文/10に対して/en/download/article-file/9)。論文の ID から PDF のリンクを組み立てないでください。 - ホスティング ≠ インデックス登録。 DergiPark に掲載されていても、品質や
TR Dizin への登録状況は分かりません。
/indexesページの内容は 自己申告であり、DergiPark による検証は行われていません。信頼できる TR Dizin の 登録状況の判定には、alterlab-trdizin を利用してください。references/indexing.mdを参照してください。
エラー時の縮退動作
ネットワークエラーは、stderr に network_unavailable/oai_error JSON オブジェクトを
出力して通知されます(終了コード 1)。スクリプトがレコードや判定を捏造することはありません。
エンドポイントに接続できない場合は、その旨を伝えて処理を中止してください。記憶を頼りにメタデータを
作り出さないでください。
参考資料
references/endpoints.md— 検証済みの各エンドポイント、プレフィックス、識別子の方式 (明確に未検証の項目も含む)。2026-06-06 に実際に確認したものです。references/oai-cookbook.md— スラッグ検索、全件ハーベスト、 年によるフィルタリング、PDF のダウンロード、Playwright を使った検索制限の回避策など、 コピーして使える手順。references/indexing.md— DergiPark と TR Dizin の違い、および TR Dizin と DOAJ を使って 実際のインデックス登録状況を照合する方法。
AlterLab Academic Skills スイートの一部です。