Skip to content

Website

哈佛燕京圖書館藏中文善本古籍

full screen viewer's metadata

javascript
window.harvard_md_server['MIRADOR_DATA']

metadata

javascript
const parse = () => {
    let tableNode = document.querySelector('table.table')
    let catalog = {
        "id": document.querySelector('dd.blacklight-record-id_tesim').innerText,
        "name": document.querySelector('dd.blacklight-spotlight_upload_full_title_tesim').innerText.trim(),
        "permalink": document.querySelector('.permalink a').getAttribute('href'),
        "extend": parseInt(document.querySelector('dd.blacklight-extent_tesim').innerText),
    }
    let nodes = document.querySelectorAll('.has-child h2 .toc-link span')
    let reg = /(\d+)-(\d+)/
    let items = []
    nodes.forEach(node => {
        let name = node.innerText
        let result = name.match(reg)
        let item = {
            'name': name,
            'start': parseInt(result[1]),
            'end': parseInt(result[2])
        }
        items.append(item)
    })
    catalog['items'] = items
    let result = JSON.stringify(catalog, null, 2)
    save(result, `${catalog['id']}.json`)
}

香光凈宗學會-香光電子書一覽表

javascript
let nodes = document.querySelectorAll('.ritz tr')
let array = []
let regex = /\?q=(.*\.pdf)&/
nodes.forEach(node => {
  let codeNode = node.querySelector('td.s9')
  let nameNode = node.querySelector('td.s10')
  let downloadNode = node.querySelector('td.s14')
  if (downloadNode && downloadNode.innerText == '下載') {
    let nameNode = downloadNode.previousSibling
    let codeNode = nameNode.previousSibling
    let urlNode = downloadNode.querySelector('a')
    if (urlNode) {
        let url = urlNode.getAttribute('href')
        let matches = url.match(regex)
        if (matches) {
            array.push({
                code: codeNode.innerText,
                name: nameNode.innerText,
                url: matches[1]
            })
        }
    }
  }
})
console.log(JSON.stringify(array))