Skip to main content

NewsML converter (AFP news)

Project description

pyconverters_newsml

license tests codecov docs version PyPI - Python Version

Convert AFP NewsML-G2 XML feeds into pymultirole Document objects.

Supports text articles, picture captions, video descriptions, and graphic items. Extracts IPTC media topics, AFP-specific subjects (persons, organisations, locations), keywords, urgency, genre, language, and other metadata.

Installation

pip install pyconverters_newsml

Usage

The converter is registered as a pyconverters.plugins entry point under the name newsml and integrates automatically with the pymultirole plugin system.

Parameters

Parameter Type Default Description
subjects_as_metadata str "" Comma-separated subject types to extract as metadata: medtop, afpperson, afporganization, afplocation, or all.
subjects_code bool False When True, metadata values are "code:name" strings; when False, only the name is stored.
mediatopics_as_categories bool False When True, IPTC media-topic codes are added as hierarchical Category objects.
keywords_as_categories bool False When True, AFP slug keywords are added as Category objects.
natures str "text" Comma-separated list of item natures to include: text, video, picture, graphic.

Developing

Prerequisites

You will need uv and Python 3.12.

Clone the repository:

git clone https://github.com/oterrier/pyconverters_newsml
cd pyconverters_newsml

Install dependencies (including test extras):

uv sync --extra test

Running the test suite

uv run pytest

Linting

uv run ruff check .
uv run ruff format --check .

Building the documentation

uv run --extra docs sphinx-build docs docs/_build

The built documentation is available at docs/_build/index.html.

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

pyconverters_newsml-1.8.37.tar.gz (732.1 kB view details)

Uploaded Source

Built Distribution

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

pyconverters_newsml-1.8.37-py3-none-any.whl (670.1 kB view details)

Uploaded Python 3

File details

Details for the file pyconverters_newsml-1.8.37.tar.gz.

File metadata

  • Download URL: pyconverters_newsml-1.8.37.tar.gz
  • Upload date:
  • Size: 732.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"12","id":"bookworm","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pyconverters_newsml-1.8.37.tar.gz
Algorithm Hash digest
SHA256 7de8c238ca1a10a8f175d719725af9f93d8b09cc72e880986c5654306882c5ad
MD5 7c333aceb0a326f3f2fda331b58f0f21
BLAKE2b-256 ad21562232ac40c875d3b9d1f2367f4991e244c8798e1176a6099eba72bc8167

See more details on using hashes here.

File details

Details for the file pyconverters_newsml-1.8.37-py3-none-any.whl.

File metadata

  • Download URL: pyconverters_newsml-1.8.37-py3-none-any.whl
  • Upload date:
  • Size: 670.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.10 {"installer":{"name":"uv","version":"0.11.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"12","id":"bookworm","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pyconverters_newsml-1.8.37-py3-none-any.whl
Algorithm Hash digest
SHA256 9d93c5d899809922b6a09d0b590fb3b9aa162bfe5150889da05ccee19e976345
MD5 7a7c2d284f47fc6706063b8e1c753389
BLAKE2b-256 7fd3a87f4b1817642d8e866a358b65365c2691758e6bd47f98e0707e088106c8

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