当前位置: 首页>>代码示例>>Python>>正文


Python Repository.find_statements方法代码示例

本文整理汇总了Python中eulfedora.server.Repository.find_statements方法的典型用法代码示例。如果您正苦于以下问题:Python Repository.find_statements方法的具体用法?Python Repository.find_statements怎么用?Python Repository.find_statements使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在eulfedora.server.Repository的用法示例。


在下文中一共展示了Repository.find_statements方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: main

# 需要导入模块: from eulfedora.server import Repository [as 别名]
# 或者: from eulfedora.server.Repository import find_statements [as 别名]
def main(argv):

    repo = Repository(root='%s/fedora/' % HOST, username='%s' % fedoraUser, password='%s' % fedoraPass).risearch
    s = solr.SolrConnection('%s/solr' % HOST)
    query = 'select ?pid where {?pid <fedora-rels-ext:isMemberOfCollection> <info:fedora/dimenovels:40>}'

    pids = repo.find_statements(query, language='sparql', type='tuples', flush=None)

    csvfile = open ("C:/Users/a1691506/Desktop/bdn.csv", 'wb')
    csvwriter = csv.writer(csvfile, delimiter=',', quotechar='"', quoting=csv.QUOTE_MINIMAL)

    for dictionary in pids:

      for key in dictionary:

        p = dictionary[key]
        pid = p.replace('info:fedora/', '')
        print pid

        response = s.query('PID:"%s"' % pid)

        results = repo.sparql_query('select ?pid where {?pid <fedora-rels-ext:isMemberOf> <info:fedora/%s> }' % pid)

        rows = list(results)
        pages = len(rows)

        try:

            for hit in response.results:

                title = hit['mods_title_full_ms'][0]
                number = hit['mods_series_number_ms'][0]
                date = hit['mods_dateIssued_ms'][0]

                csvwriter.writerow([pid, title, number, date, pages])
        except:

            print "%s failed." % pid

    csvfile.close()
开发者ID:mshort,项目名称:niu_metadata,代码行数:42,代码来源:solr_query.py


注:本文中的eulfedora.server.Repository.find_statements方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。