Skip to main content

Getty ULAN and WikiData scraping utilities for artists

Project description

Artist Getter

Building on top of sfmoma/getty-getter to retrieve artist information from both Getty ULAN and WikiData.

Installation

pip install artist-getter

Getty Getter was built on Django 1.8 and Python 3.12.

Artist Getter

Getty Getter was a script developed by SFMOMA for associating artists with the Getty ULAN vocabulary and gathering additional metadata based on an artist's ULAN.

The ULAN vocabulary is a wealth of information regarding people and organizations involved in art and culture. More about ULAN can be found here.

Wikidata is later added as a supplement on top of ULAN, in case there are entries missing from one of the two artist databases. Together they constitute Artist Getter.

This script is a work in progress.

ULAN Functions

Right now there are four basic functions.

1. get_getty_ulan

get_getty_ulan which consumes and artist's name (formatted u'Last, First') and does a best guess match against similar names in the Getty ULAN vocabulary. The returned data will include the name of the artist or organization, the ULAN, the "type" og thing returned (e.g. person, organization etc) and a scope note, which is a brief summary of the artist's career.

get_getty_ulan(u"Stieglitz, Alfred")

{'scopenote': u'Renowned photographer Stieglitz first studied photochemistry with Hermann Wilhelm Vogel at the Technische Hochschule in Berlin, from 1882-1886, and took his first photographs in 1883. He continued to travel and photograph in Germany, Austria, and Switzerland until 1890, when he returned to New York City. From 1890 to 1895 he was a partner in a photogravure firm. During this time he concentrated on photographing the streets of New York City. In 1894, Stieglitz travelled to Europe and was elected a member of the Linked Ring, a pictorialist society in London. In 1902, Stieglitz founded the Photo-Secession Movement which attempted to prove that pictorialist photography was a fine art form. From 1903 to 1917, Stieglitz was publisher and director of Camera Work magazine. The graphic section was run by Edward Steichen (1879-1973). In 1905, Stieglitz opened the Little Galleries of the Photo-Secession "291" on Fifth Avenue in New York City with Steichen. The galleries operated until 1917. In 1907, Stieglitz exhibited his autochrome photographs. Stieglitz stopped photographing in 1937. During his lifetime, Stieglitz was also a close friend and collaborator of Joseph T. Keiley. Together they invented the glycerine process which permitted partial development of platinum papers. Also, they produced joint research on the history of photography. Keiley also acted as the associate editor of Stieglitz\'\'s publications "Camera Notes" and "Camera Works". American photographer.', 'ulan': u'500024301', 'type': u'Persons, Artists', 'term': u'Stieglitz, Alfred'}

2. get_getty_relationship

get_getty_relationship which consumes an artist's ULAN and returns a list of the relationships that artist had with other artists in the ULAN vocabulary. The object_ulan being the ULAN of the related person or organization. get_getty_relationship("500024301")

{'relationship_type': u'student of', 'object_ulan': u'500063166'}{'relationship_type': u'influenced', 'object_ulan': u'500007426'}{'relationship_type': u'colleague of', 'object_ulan': u'500004441'}{'relationship_type': u'collaborated with', 'object_ulan': u'500001336'}{'relationship_type': u'collaborated with', 'object_ulan': u'500000431'}{'relationship_type': u'spouse of', 'object_ulan': u'500018666'}{'relationship_type': u'friend of', 'object_ulan': u'500070483'}

3. get_getty_artist_name

get_getty_artist_name which consumes an ULAN and returns just the artist's name formatted Last, First. get_getty_artist_name("500024301") Stieglitz, Alfred

4. get_getty_artist_data

get_getty_artist_data which consumes an ULAN and returns entire set of data from given ulan as a dictionary. get_getty_artist_data("500024301")

{
'@context': 'https://linked.art/ns/v1/linked-art.json',
'_label': 'Stieglitz, Alfred',
'born': { 'id': 'http://vocab.getty.edu/ulan/activity/birth/4000062133',
'timespan': { 'begin_of_the_begin': '1864-01-01T00:00:00',
    'end_of_the_end': '1864-12-31T23:59:59',
    'id': 'http://vocab.getty.edu/ulan/time/birth/4000062133',
    'type': 'TimeSpan' },
'took_place_at': [ { '_label': 'Hoboken',
    'id': 'http://vocab.getty.edu/tgn/7013711-place',
    'type': 'Place' } ],
...

The dictionary is parsed from this json file on ULAN

5. get_getty_artist_sex

get_getty_artist_name which consumes an ULAN and returns just the artist's sex as a string, available sexes are ' male', 'female' and None if unknown. get_getty_artist_sex("500024301")

male

WikiData Functions

1. get_wiki_artist_data

get_wiki_artist_data consumes a WikiData ID like Q948598 and returns the entire data set from WikiData.

2. get_wiki_artist_name

get_wiki_artist_data consumes a WikiData ID and returns the artist name in 'First Last' format, as seen on WikiData.

get_wiki_artist_name("Q948598")

Albert Pinkham Ryder

3. get_wiki_artist_sex

get_wiki_artist_sex which consumes a WikiData ID and returns just the artist's gender and sex as a string, available sexes are ' male', 'female' and None if unknown.

get_wiki_artist_sex("Q948598")

male

Example View

from django.views.generic.base import View
from django.http import HttpResponse
from artist_getter import *
import json


class GetUlanView(View):
    def get(self, request):
        artist_ulan = json.dumps(get_getty_ulan(u"Stieglitz, Alfred"))

        return HttpResponse(artist_ulan, content_type="application/json")

Build & Release

For maintainers of this package only.

Download setuptools: pip install --upgrade setuptools

First, bump up the release version in setup.py.

Run this command to build package: python -m build

Run this if building on Windows: py -m build

Run checks before releasing to PyPI: twine check --strict dist/*

Push everything and create a release on GitHub.

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

artist_getter-0.4.tar.gz (6.6 kB view details)

Uploaded Source

Built Distribution

artist_getter-0.4-py3-none-any.whl (6.9 kB view details)

Uploaded Python 3

File details

Details for the file artist_getter-0.4.tar.gz.

File metadata

  • Download URL: artist_getter-0.4.tar.gz
  • Upload date:
  • Size: 6.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.3

File hashes

Hashes for artist_getter-0.4.tar.gz
Algorithm Hash digest
SHA256 4db2563bde22ba1b3687a77c5c3fecdef6a807f6121f2031c896d48e6635f34e
MD5 1320a13efff3778d90ed9b2bda731f72
BLAKE2b-256 e71bdcffa847e8e74b7f2bf2778ef4a71d3471a0f2be6918a5156724dccc52ef

See more details on using hashes here.

File details

Details for the file artist_getter-0.4-py3-none-any.whl.

File metadata

  • Download URL: artist_getter-0.4-py3-none-any.whl
  • Upload date:
  • Size: 6.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.3

File hashes

Hashes for artist_getter-0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 e50f509c83e266057a601b6395c9ecdf0be1e58510236e85eb511f666e766550
MD5 af9b03b78c93b39a68034e87641ef159
BLAKE2b-256 8c276f126bfcdb805bb21501ac79177c0f2cec72521816ad14d7d8a4b8b73b68

See more details on using hashes here.

Supported by

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