diff --git a/SRU.ipynb b/SRU.ipynb index 1445705a11f16627b34b25124b26f6e3d861b415..f530d53adffb40f98413fed3cf090cc8baf3e61e 100644 --- a/SRU.ipynb +++ b/SRU.ipynb @@ -45,8 +45,43 @@ " result = e.xpath('/srw:searchRetrieveResponse/srw:records/srw:record/srw:recordIdentifier/text()', namespaces=namespaces)\n", " return result[0]\n", "\n", + "def getYear(barcode):\n", + " cont=requests.get('https://obv-at-oenb.alma.exlibrisgroup.com/view/sru/43ACC_ONB?version=1.2&query=alma.barcode=%2BZ' + barcode + '&startRecord=0&maximumRecords=1&operation=searchRetrieve&recordSchema=marcxml').content\n", + " e = etree.XML(cont)\n", + " namespaces = {\n", + " 'srw': 'http://www.loc.gov/zing/srw/',\n", + " 'marc21': 'http://www.loc.gov/MARC21/slim'\n", + " } \n", + " xpath = '/srw:searchRetrieveResponse/srw:records/srw:record/srw:recordData/marc21:record/marc21:datafield[@tag=\\'264\\']/marc21:subfield[@code=\\'{}\\']/text()'\n", + " yearResult = e.xpath(xpath.format('c'), namespaces=namespaces)\n", + " year = \"; \".join(yearResult) if yearResult else ''\n", + " placeResult = e.xpath(xpath.format('a'), namespaces=namespaces)\n", + " place = \"; \".join(placeResult) if placeResult else ''\n", + " return[year, place]\n", + "\n", + "def getDCDataMMS(mms_id):\n", + " cont=requests.get('https://obv-at-oenb.alma.exlibrisgroup.com/view/sru/43ACC_ONB?version=1.2&query=alma.mms_id=' + mms_id + '&startRecord=0&maximumRecords=1&operation=searchRetrieve&recordSchema=dc').content\n", + " e = etree.XML(cont)\n", + " namespaces = {\n", + " 'srw': 'http://www.loc.gov/zing/srw/',\n", + " 'srw_dc': 'info:srw/schema/1/dc-schema',\n", + " 'dc': 'http://purl.org/dc/elements/1.1/'\n", + " }\n", + " xpath = '/srw:searchRetrieveResponse/srw:records/srw:record/srw:recordData/srw_dc:dc/dc:{}/text()'\n", + " \n", + " titleResult = e.xpath(xpath.format('title'), namespaces=namespaces)\n", + " title = \"; \".join(titleResult) if titleResult else ''\n", + " \n", + " contributorResult = e.xpath(xpath.format('contributor'), namespaces=namespaces)\n", + " contributor = \"; \".join(contributorResult) if contributorResult else ''\n", + " \n", + " dateResult = e.xpath(xpath.format('date'), namespaces=namespaces)\n", + " date = \"; \".join(dateResult) if dateResult else ''\n", + " print([title, contributor, date])\n", + " return [title, contributor, date]\n", + "\n", "def getDCData(barcode):\n", - " cont=requests.get('https://obv-at-oenb.alma.exlibrisgroup.com/view/sru/43ACC_ONB?version=1.2&query=alma.barcode=%2BZ' + barcode + '&startRecord=0&maximumRecords=1&operation=searchRetrieve&recordSchema=dc').content\n", + " cont=requests.get('https://obv-at-oenb.alma.exlibrisgroup.com/view/sru/43ACC_ONB?version=1.2&query=alma.barcode=' + barcode + '&startRecord=0&maximumRecords=1&operation=searchRetrieve&recordSchema=dc').content\n", " e = etree.XML(cont)\n", " namespaces = {\n", " 'srw': 'http://www.loc.gov/zing/srw/',\n", @@ -92,6 +127,33 @@ "cell_type": "code", "execution_count": 3, "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "['Sammlung der besten Reisebeschreibungen', '', '1784']\n" + ] + }, + { + "data": { + "text/plain": [ + "['Sammlung der besten Reisebeschreibungen', '', '1784']" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "getDCDataMMS(str(990048102650603338))" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, "outputs": [ { "name": "stdout", @@ -109,7 +171,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 5, "metadata": {}, "outputs": [ { @@ -138,29 +200,29 @@ " \n", "
\n", "\n", - " | Identifier | \n", - "Titel | \n", - "Autor | \n", - "Erscheinungsjahr | \n", - "
---|---|---|---|---|
0 | \n", - "Z164418102 | \n", - "Sammlung der besten Reisebeschreibungen | \n", - "\n", - " | 1784 | \n", - "
1 | \n", - "Z98085808 | \n", - "Sammlung der besten Reisebeschreibungen | \n", - "\n", - " | 1784 | \n", - "
2 | \n", - "Z97787406 | \n", - "Geschichte der Reisen die seit Cook an der Nor... | \n", - "Forster, Georg1754-1794(DE-588)118534416edtO:H... | \n", - "1792 | \n", - "
3 | \n", - "Z198357107 | \n", - "Sammlung der besten Reisebeschreibungen | \n", - "Traßler, Joseph Georg1759-1816(DE-588)12926235... | \n", - "1784 | \n", - "
4 | \n", - "Z16441800X | \n", - "Sammlung der besten Reisebeschreibungen | \n", - "\n", - " | 1784 | \n", - "
5 | \n", - "Z98085705 | \n", - "Sammlung der besten Reisebeschreibungen | \n", - "\n", - " | 1784 | \n", - "
6 | \n", - "Z167356806 | \n", - "Beschreibung der äussern und innern Merkwürdig... | \n", - "Rumpf, Friedrichaut | \n", - "1794 | \n", - "
7 | \n", - "Z69872607 | \n", - "Neues Elementarwerk für die niedern Klassen la... | \n", - "Fabri, Johann Ernst1755-1825(DE-588)11536028Xa... | \n", - "1790 | \n", - "
8 | \n", - "Z6987270X | \n", - "Neues Elementarwerk für die niedern Klassen la... | \n", - "Fabri, Johann Ernst1755-1825(DE-588)11536028Xa... | \n", - "1790 | \n", - "