From 216cbb19ae3f41532540f3693a40392e67c1f8b8 Mon Sep 17 00:00:00 2001 From: Georg Petz Date: Fri, 18 Jan 2019 12:10:54 +0100 Subject: [PATCH] enrich Excel table with Viewerlinks and Barcodes --- ABOExamplesFromALMA.xlsx | Bin 0 -> 9184 bytes ABOExamplesFromALMAextended.xlsx | Bin 0 -> 6684 bytes ViewerlinksFromBibframe.ipynb | 136 +++++++++++++++++++++++++++++++ 3 files changed, 136 insertions(+) create mode 100644 ABOExamplesFromALMA.xlsx create mode 100644 ABOExamplesFromALMAextended.xlsx create mode 100644 ViewerlinksFromBibframe.ipynb diff --git a/ABOExamplesFromALMA.xlsx b/ABOExamplesFromALMA.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..5ba3da7b724a5f2de1fbf9e3b7de0b6cc8aebcdb GIT binary patch literal 9184 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 literal 0 HcmV?d00001 diff --git a/ABOExamplesFromALMAextended.xlsx b/ABOExamplesFromALMAextended.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..4f153a4bf645473e029e82761daff0072a75846a GIT binary patch literal 6684 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 literal 0 HcmV?d00001 diff --git a/ViewerlinksFromBibframe.ipynb b/ViewerlinksFromBibframe.ipynb new file mode 100644 index 0000000..8893f8b --- /dev/null +++ b/ViewerlinksFromBibframe.ipynb @@ -0,0 +1,136 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "from lxml import etree\n", + "import requests\n", + "import pandas as pd" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "def getLinksAndBarcodes(local_mms_id):\n", + " cont=requests.get('https://open-na.hosted.exlibrisgroup.com/alma/43ACC_ONB/bf/entity/instance/' + local_mms_id).content\n", + " e = etree.XML(cont)\n", + " namespaces = {\n", + " 'rdf': 'http://www.w3.org/1999/02/22-rdf-syntax-ns#',\n", + " 'bf': 'http://id.loc.gov/ontologies/bibframe/',\n", + " 'rdfs': 'http://www.w3.org/2000/01/rdf-schema#',\n", + " 'bflc': 'http://id.loc.gov/ontologies/bflc/'\n", + " }\n", + " result = e.xpath('/rdf:RDF/bf:Instance/bf:hasItem/bf:Item/bf:electronicLocator/rdfs:Resource/bflc:locator/@rdf:resource', namespaces=namespaces)\n", + " barcodes = []\n", + " for link in result:\n", + " splits = link.split('%2B')\n", + " if len(splits) >= 2:\n", + " barcodes.append('+' + link.split('%2B')[1])\n", + " print (local_mms_id + ': ' + \", \".join(barcodes))\n", + " linksJoined = \", \".join(result)\n", + " barcodesJoined = \", \".join(barcodes)\n", + " return [linksJoined, barcodesJoined]" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "NaN 990032334150603338\nNaN 990035648370603338\nNaN 990031644540603338\nName: MMS-ID, dtype: int64" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df = pd.read_excel('ABOExamplesFromALMA.xlsx')\n", + "df_sample = df.sample(3).copy()\n", + "df_sample['MMS-ID']" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "990032334150603338: +Z227525900, +Z172047601\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "990035648370603338: +Z219890307, +Z255756803\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "990031644540603338: +Z136879807, +Z172905502\n" + ] + } + ], + "source": [ + "df_sample[['Viewerlinks','Barcodes']] = df_sample.apply(lambda row: getLinksAndBarcodes(str(row['MMS-ID'])), axis=1, result_type='expand')" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [], + "source": [ + "writer = pd.ExcelWriter(r'ABOExamplesFromALMAextended.xlsx', engine='xlsxwriter',options={'strings_to_urls': False})\n", + "df_sample.to_excel(writer)\n", + "writer.close()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 2", + "language": "python", + "name": "python2" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 2 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython2", + "version": "2.7.6" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} -- GitLab