All tags

TAG

#python

102articles

Auto-Updating a Statistics Page from TEI/XML Transcription Data via CI/CD — A Case Study from the Kouigenjimonogatari Text DB

How a statistics page that aggregates pages, lines, characters, and waka counts per chapter is generated from TEI/XML transcription data, and how the rebuild and redeployment are automated with GitHub Actions.

teixmldhgithub-actions

Probing the Public APIs of the Tohoku University Digital Archives — Exporting per-setSpec Excel via OAI-PMH

I surveyed which public APIs are available on the Tohoku University Digital Archives (touda.tohoku.ac.jp/collection) and worked out a procedure to harvest metadata per setSpec via OAI-PMH and write each set into its own Excel file.

oaipmhiiifpythonopenpyxl

📥researchmap Achievement Registration: Options for Individual Researchers and a Playwright Implementation

researchmap provides an official write API and CSV/JSON/JSONL import for individual users, each with its own constraints. This article reviews the available options and presents a Playwright implementation that adds full automation and PDF attachment support.

researchmapplaywrightpythonautomation

📅Auto-filling Chouseisan attendance with Playwright, deciding answers via Claude Code's Google Calendar MCP

A small CLI that automates attendance responses on Chouseisan (chouseisan.com) using Playwright. The decision part — whether each candidate slot should be ◯/△/× given the user's Google Calendar — is delegated to Claude Code via the claude.ai Google Calendar MCP. The workflow is split into three independent stages (fetch / fill / submit), and decision rules live in CLAUDE.md.

playwrightclaude-codemcpgoogle-calendar

📖Calling NDLOCR-Lite as a Python Library Instead of CLI

How to import and call NDLOCR-Lite, a Japanese OCR engine published by the National Diet Library, directly from a Python script instead of using the CLI.

ndlocrocrpythonjapanese-ocr

Bulk-Editing 508 Zenn Articles with Playwright and Internal API for Migration Redirects

When migrating 900+ articles from Zenn to a self-hosted Hugo blog, I used Playwright and an undocumented API to bulk-replace article bodies with redirect notices.

zennplaywrightpythonseo

Pitfalls of Converting TEI XML Standoff Annotations to Inline, and a DOM-Based Solution

A record of a document structure corruption bug encountered while converting TEI XML standoff annotations to inline for a Vue.js viewer in the Digital Engishiki project, and the DOM-based solution.

teixmlpythonbeautifulsoup

Observed Timing: Apple Sales Reports API Data Availability and YouTube API Quota Reset

Documenting the actual observed timing of when Apple App Store Connect Sales Reports become available and when YouTube Data API v3 quota resets.

appstoreconnectapiyoutubepython

📸Fully Automating App Store Screenshot Generation with Python and Xcode UI Tests

How to build an end-to-end pipeline that captures simulator screenshots with XCUITest, generates marketing images with Python Pillow, and uploads them to App Store Connect via API -- all from a single shell script.

iosappstoreconnectpythonautomation

📚Building an NDC Book Classifier with LoRA: Fine-Tuning a Japanese LLM on Library Data

A hands-on tutorial on collecting bibliographic data from the National Diet Library Search API and fine-tuning a 1.8B Japanese LLM with LoRA to classify books by their NDC (Nippon Decimal Classification) category from title alone.

llmlorapythonnlp

🔗Automating researchmap KAKENHI-Achievement Linking with Playwright

researchmap does not support linking KAKENHI research projects to achievements via API or CSV import, so I created a Playwright script to automate the browser-based workflow.

researchmapplaywrightpythonautomation

🔄How to Submit an iOS App Update for Review Using the App Store Connect API

A step-by-step guide to submitting an iOS app update for review entirely from the command line using the App Store Connect REST API—from build upload to review submission.

iosappstoreconnectapipython

💰Complete Guide to Adding a Tip Jar (In-App Purchase) to Your iOS App with App Store Connect API

Learn how to implement a Tip Jar feature in your iOS app using StoreKit 2 and the App Store Connect API — covering product registration, localization, pricing, screenshot upload, TestFlight distribution, and more, all from the command line.

iosappstoreconnectapipython

📸Fixing the White Bar at the Bottom of Chrome Headless Screenshots

When using Chrome Headless --screenshot to capture HTML as images, a white bar appears at the bottom. Here's the root cause and a reliable fix.

chrome-extensionpythontipsffmpeg

🎭Auto-Generating VRM Character Animation Videos with Three.js + Puppeteer

Implementation notes on building a pipeline that animates VRM models on headless Chrome using Three.js and @pixiv/three-vrm, combined with VOICEVOX lip sync, to auto-generate VTuber-style explainer videos.

threejsjavascriptpythonvrm

🚀Submitting an iOS App for Review Using Only the App Store Connect API

A step-by-step guide to completing nearly all tasks required for App Store review submission—metadata, screenshots, age ratings, build association, encryption compliance, pricing, and more—from the command line using the App Store Connect REST API.

iosappstoreconnectapipython

How to Bulk Unpublish Hatena Blog Articles (AtomPub API)

How to effectively bulk unpublish published articles using the Hatena Blog AtomPub API

hatenapythonapi

📝Trying "oitei" - An Automatic Conversion Tool from OpenITI mARkdown to TEI XML

Trying "oitei" - an automatic conversion tool from OpenITI mARkdown to TEI XML

pythonxmlteidh

👻Complete Restoration of Deep Zoom Images: Converting Tile Images to BigTIFF

Complete restoration of Deep Zoom images: converting tile images to BigTIFF

pythonxml

🔥Introducing GitHub File History Analyzer: A Tool for Analyzing File Edit History with AI

Introducing GitHub File History Analyzer: A Tool for Analyzing File Edit History with AI

aigithubpythonautomation

🐈Fixing the 'ref' Bug in DHConvalidator

Fixing the 'ref' bug in DHConvalidator

pythonxmlteidocx

📚Adding Normalization Rules in Archivematica's Preservation Planning

Adding Normalization Rules in Archivematica's Preservation Planning

pythonjpegimagemagickarchivematica

📚Registering Objects Using the AtoM (Access to Memory) API

Registering Objects Using the AtoM (Access to Memory) API

atompythonapi

🐥How to Convert Word Files to TEI XML: A Guide to Using the TEIgarage API

How to Convert Word Files to TEI XML: A Guide to Using the TEIgarage API

pythonteidocxteigarage

🤖Registering Data with Drupal's JSON:API Using Username and Password

Registering Data with Drupal's JSON:API Using Username and Password

pythondrupal

🐥How to Get Coordinates of Sub-Images from a Larger Image

How to Get Coordinates of Sub-Images from a Larger Image

pythonopencv

👌Creating TEI/XML from VTT Files

Creating TEI/XML from VTT Files

pythoniiifteivtt

📑Created a Similar Text Search App for the Koui Genji Monogatari

Created a Similar Text Search App for the Koui Genji Monogatari

pythonocrhuggingfacetei

📝Creating AIPs with Archivematica for Files in Alfresco

Creating AIPs with Archivematica for Files in Alfresco

pythonarchivematicamdxjpalfresco

👻How to Upload Media to Omeka S Using Python

How to Upload Media to Omeka S Using Python

pythoniiifomekaomekas

👏Trying Out Geocoding Libraries

Trying Out Geocoding Libraries

pythongeocoding

😺Notes on LLM-Related Tools

Notes on LLM-Related Tools

pythonllmllamaindexollama

😸Uploading Files and More Using the GakuNin RDM API

Uploading files and more using the GakuNin RDM API

pythonapinbdevrdm

📘Building a Character Detection Model Using YOLOv11x and the Japanese Classical Character Dataset

Building a Character Detection Model Using YOLOv11x and the Japanese Classical Character Dataset

pythonyolomdxjp

🙄Training YOLOv11 Classification (Kuzushiji Recognition) Using mdx.jp

Training YOLOv11 classification (kuzushiji recognition) using mdx.jp

pythonyolohuggingfacemdxjp

🗂Getting a List of Properties for a Specific Vocabulary in Omeka S

Getting a List of Properties for a Specific Vocabulary in Omeka S

pythonapiomekaomekas

🙆Creating a Transparent Text PDF from a Single Page Using Google Cloud Vision API

Creating a transparent text PDF from a single page using Google Cloud Vision API

pythonpdfocr

💨A Python Library for Visualizing the Contents of Archivematica METS Files

A Python Library for Visualizing the Contents of Archivematica METS Files

pythonnbdevarchivematicamets

😺Creating IIIF v3 Manifests for Video Using iiif-prezi3

Creating IIIF v3 Manifests for Video Using iiif-prezi3

pythoniiif

📚Manipulating CVAT Data Using Python

Manipulating CVAT data using Python

pythoncvat

👌Performing Similar Image Search Using GUIE (Google Universal Image Embedding) Pre-trained Models

Performing Similar Image Search Using GUIE (Google Universal Image Embedding) Pre-trained Models

pythonkagglegui

😺Applying Google Cloud Vision to Image Files to Create IIIF Manifests and TEI/XML Files

Applying Google Cloud Vision to Image Files to Create IIIF Manifests and TEI/XML Files

pythonocriiiftei

🔖Registering RDF Data to Dydra Using Python

Registering RDF Data to Dydra Using Python

pythonrdfdydra

A Library for Creating RDF Files from VSDX Files

A Library for Creating RDF Files from VSDX Files

pythonrdfcolabvisio

👏Fetching All Records from an OAI-PMH Repository Using Python

Fetching All Records from an OAI-PMH Repository Using Python

pythonomekaoaipmh

Bulk Deleting Multiple Content Items Using the Drupal REST API

Bulk Deleting Multiple Content Items Using the Drupal REST API

pythondrupal

🔥App Development Using Zotero's API and Streamlit

App Development Using Zotero's API and Streamlit

pythonstreamlitzotero

💭Retrieving RDF from URIs Using Content Negotiation in Python

Retrieving RDF from URIs using Content Negotiation in Python

pythonrdfwikidata

👏Trying iiif-prezi3

Trying iiif-prezi3

pythoniiif

👋Using "ARC2 RDF Graph Visualization" from Python

Using "ARC2 RDF Graph Visualization" from Python

pythonrdf

Fixing an Inference App Using Hugging Face Spaces and a YOLOv5 Model (Trained on NDL-DocL Dataset)

Fixing an Inference App Using Hugging Face Spaces and a YOLOv5 Model (Trained on NDL-DocL Dataset)

pythonyolohuggingfacegradio

👋Formatting XML Strings in Python

Formatting XML strings in Python

pythonxml

💨An Example Analysis of Texts Published in "SAT Daizokyo Text Database 2018"

An Example Analysis of Texts Published in "SAT Daizokyo Text Database 2018"

htmlpython

😎Using the researchmap API

Using the researchmap API

python

🔖Trying Out AIPscan

Trying Out AIPscan

pythonrabbitmqarchivematicacelery

🙆Aligning the Collated Tale of Genji with Modern Japanese Translations in Digital Genji Monogatari

Aligning the Collated Tale of Genji with Modern Japanese Translations in Digital Genji Monogatari

pythonxmltei

🐷Handling AttributeError: 'ImageDraw' object has no attribute 'textsize'

Handling AttributeError: 'ImageDraw' object has no attribute 'textsize'

pythonpillow

🎃Restarting Virtuoso on EC2 Using Amazon SNS

Restarting Virtuoso on EC2 using Amazon SNS

awspythonec2sam

🐈Notes on Extracting Latitude and Longitude from Google Maps Short URLs

Notes on Extracting Latitude and Longitude from Google Maps Short URLs

pythonmap

🔥Batch Registering Data to Omeka Classic IIIF Toolkit

Batch Registering Data to Omeka Classic IIIF Toolkit

pythoniiifomeka

🐷Trying Out WikibaseSync

Trying Out WikibaseSync

pythonwikidatawikibasewikibasesync

🐡Using the Wikibase API

Using the Wikibase API

pythonwikibase

🎃Trying Dataverse

Trying Dataverse

pythondataverse

How to Bulk Delete Collections in Omeka Classic

How to bulk delete collections in Omeka Classic

pythonapiomeka

🙆‍♀️Trying Out bagit-python

Trying Out bagit-python

pythonbagit

🎉Connecting Django with AWS OpenSearch

Connecting Django with AWS OpenSearch

djangopythonelasticsearchopensearch

🙄Content Registration and Multilingual Support Using Drupal Key Auth

Content Registration and Multilingual Support Using Drupal Key Auth

pythondrupaljsonapi

🦁Trying Wagtail

Trying Wagtail

pythonwagtail

🗂Customizing Views for Custom Models in Django REST Framework JSON:API (DJA)

Customizing Views for Custom Models in Django REST Framework JSON:API (DJA)

djangopython

📖Adding Custom Models to Django REST framework JSON:API (DJA)

Adding Custom Models to Django REST framework JSON:API (DJA)

djangopython

🌟Trying Django REST Framework JSON:API (DJA)

Trying Django REST framework JSON:API (DJA)

djangopython

🔥Creating PDF Files from IIIF Manifest Files

Creating PDF Files from IIIF Manifest Files

pythonpdfiiif

🎉Prototype of an XML File Validation Tool Using JPCOAR Schema (v1)

Prototype of an XML File Validation Tool Using JPCOAR Schema (v1)

pythonxmljpcoar

💭Bug Fixes and Feature Additions to the NDL Classical Book OCR Tutorial Using Google Colab

Bug fixes and feature additions to the NDL classical book OCR tutorial using Google Colab

pythoncolabocriiif

📑Registering Taxonomies and Adding Them to Content in Drupal Using Python

Registering Taxonomies and Adding Them to Content in Drupal Using Python

pythondrupal

🕌Updating and Deleting Drupal Content Using Python

Updating and deleting Drupal content using Python

pythondrupal

🙄Adding Content to Drupal Using Python

Adding Content to Drupal Using Python

pythondrupal

📘Creating RDF from Excel

Creating RDF from Excel

pythonrdf

🐈How to Extract respStmt name Values from TEI/XML Files (Explained by GPT-4)

How to Extract respStmt name Values from TEI/XML Files (Explained by GPT-4)

pythonbeautifulsoupdataextractiontei

👏Memo on Using nbdev

Memo on Using nbdev

pythonnbdev

🙌Publishing Images Using IIIF Image API Level 0

Publishing Images Using IIIF Image API Level 0

pythoniiif

👋NDL Classical Text OCR Using Google Colab

NDL classical text OCR using Google Colab

pythonmachinelearningocrndlocr

📌Validating XML Files Using the JPCOAR Schema

Validating XML Files Using the JPCOAR Schema

pythonxmlxsdjpcoar

🐥Trying the jingtrang Library for RELAX NG Schema: Creating RNG Files

Trying the jingtrang Library for RELAX NG Schema: Creating RNG Files

pythonxmlrng

🐈Trying the jingtrang Library for RELAX NG Schema: Validation

Trying the jingtrang library for RELAX NG schema: validation

pythonxmlrngtei

🚀Converting Word to TEI/XML

Converting Word to TEI/XML

pythonteidocx

🦔Running Tesseract on Google Colab (with Japanese Support)

Running Tesseract on Google Colab (with Japanese Support)

pythoncolabtesseract

🙆‍♀️Workaround for HuggingFace Trainer() Not Starting When Using Vertex AI Workbench

Workaround for HuggingFace Trainer() not starting when using Vertex AI Workbench

pythonmachinelearningvertex

🐡Trying the ResourceSync Python Library

Trying the ResourceSync Python Library

pythonresourcesync

A Python Package for Interacting with the Omeka S REST API

A Python Package for Interacting with the Omeka S REST API

pythonomekaomekasnbdev

🙆Double-Sided Ruby Annotations Using python-docx

Double-Sided Ruby Annotations Using python-docx

pythonrubyxmltei

Converting TEI/XML Files to EPUB Using Python

Converting TEI/XML Files to EPUB Using Python

pythonxmlepubtei

🐡How to Extract and Process Only Text Strings from XML Files

How to Extract and Process Only Text Strings from XML Files

pythonbeautifulsoupxml

📑How to Set the xml:id Attribute with BeautifulSoup

How to Set the xml:id Attribute with BeautifulSoup

pythonbeautifulsoupxml

💭How to Register and Delete RDF Files in Virtuoso RDF Store Using curl and Python

How to register and delete RDF files in Virtuoso RDF store using curl and Python

pythonrdfvirtuoso

👻I Created a Program to Extract Differences Between Two Texts

I created a program to extract differences between two texts.

pythonxmltei

🌊File Upload (Python) and Download (PHP)

File Upload (Python) and Download (PHP)

phppython

🐷Creating Microsoft Word Files with python-docx: Using Templates and int2kanji

Creating Microsoft Word Files with python-docx: Using Templates and int2kanji

pythondocx

📚Execution Time for NDLOCR Using Google Colab

Execution time for NDLOCR using Google Colab

pythonmachinelearningcolabocr

🤖Example of Running SPARQL Queries Against the Japan Search RDF Store Using Google Colab

Example of running SPARQL queries against the Japan Search RDF store using Google Colab

pythonrdfsparqlcolab

📑Building an Object Detection API Using AWS Lambda (Flask + YOLOv5)

Building an Object Detection API Using AWS Lambda (Flask + YOLOv5)

awsflaskpythonlambda

🐈[Google Colab] Retrieving Article Lists Using the Hatena Blog AtomPub API

[Google Colab] Retrieving Article Lists Using the Hatena Blog AtomPub API

pythoncolabhatena