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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 K5k>m@)BgjJPNrG_ 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