Skip to main content

J-STAGE API wrapper for Python - Python 3.12 Compatible

Project description

pyjstage2

Python 3.12 License: MIT PyPI version

Overview

J-STAGE WebAPI Wrapper for Python 3.

  • J-STAGE is an electronic journal platform for science and technology information in Japan, developed and managed by the Japan Science and Technology Agency (JST).
  • This package is a Python 3.12 compatible fork of pyjstage.

Acknowledgments

This project is modified based on matsurih/pyjstage (v0.0.2).

Special thanks to the original author @matsurih for creating this useful J-STAGE API wrapper.

What's Changed

Package Original Forked
lxml 4.4.2 >=5.0.0
requests 2.22.0 >=2.31.0
urllib3 1.25.7 >=2.0.0
certifi 2019.11.28 >=2023.0.0
  • Fixed absolute imports to relative imports
  • Fixed private method name mangling (__finish_setup_finish_setup)
  • Added __init__.py export for cleaner imports

Prerequisites

  • Python >= 3.12

Installation

$ pip install pyjstage2

Usage

Basic Usage

from pyjstage.pyjstage import Pyjstage

jstage = Pyjstage()

# Search by ISSN
ret_search = jstage.search(issn='2186-6619', count=3)

# List articles in a journal
ret_list = jstage.list(issn='2186-6619')

Accessing Results

for entry in ret_search.entries:
    print(f"Title: {entry.title}")
    print(f"Author: {entry.author.get('ja', '')}")
    print(f"Journal: {entry.material_title.get('ja', '')}")
    print(f"Year: {entry.pubyear}")
    print(f"DOI: {entry.doi}")
    print(f"Link: {entry.link}")

Search Parameters

jstage.search(
    pubyearfrom=2020,      # Search from year
    pubyearto=2024,        # Search to year
    material='journal',    # Journal name contains
    article='title',       # Article title contains
    author='name',         # Author name contains
    keyword='AI',          # Keyword contains
    issn='2186-6619',      # ISSN
    count=10               # Number of results (max 1000)
)

Important Notes

What J-STAGE API Provides

  • Literature search - Search by ISSN, keyword, author, year, etc.
  • Metadata - Title, author, journal, year, DOI, page numbers
  • Article links - Links to J-STAGE article pages

What J-STAGE API Does NOT Provide

  • Full-text PDF download - The API does not provide direct PDF downloads
  • Full-text content - The API returns metadata, not full article text

To access full-text content, use the link or doi fields to visit the publisher's website.

Changelog

v0.1.2 (2025-06-16)

  • Fix: Null-safe XML parsing in SearchResult and ListResult — handles missing/empty XML elements without raising AttributeError
  • Fix: WARN_002 (too many results) is now treated as a warning instead of raising an error, since the API still returns valid data

v0.1.1 (2025-05-18)

  • First PyPI release as pyjstage2
  • Python 3.12 compatibility
  • Updated dependencies (lxml >=5.0, requests >=2.31, urllib3 >=2.0)

Source Code

https://github.com/lanshi17/pyjstage

License

MIT License - see LICENSE file.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyjstage2-0.1.2.tar.gz (12.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pyjstage2-0.1.2-py3-none-any.whl (11.4 kB view details)

Uploaded Python 3

File details

Details for the file pyjstage2-0.1.2.tar.gz.

File metadata

  • Download URL: pyjstage2-0.1.2.tar.gz
  • Upload date:
  • Size: 12.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for pyjstage2-0.1.2.tar.gz
Algorithm Hash digest
SHA256 2a69214bbb21d6d33922bc130da494a985e4310e42158f514a8ae837df2b9f16
MD5 bd6017bcd60f26f8d718d397d7b1af42
BLAKE2b-256 b513bdec596609ef5cf61d03f13e3899b91ec61cd2d30f6b903e58a5005e347c

See more details on using hashes here.

File details

Details for the file pyjstage2-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: pyjstage2-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 11.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for pyjstage2-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 cc1099389fd0212f51b9e15c1158a99f98f703e98600b4eca4a17f6459d278ec
MD5 df5730f3d1da32b5e78b5ffb8b112ae4
BLAKE2b-256 2ba79c911fa0511ab8392526314536926f176207ec9007cc2483cc05700fb12c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page