Python PyMarc无效文字错误

Python PyMarc无效文字错误,python,marc,z39.50,Python,Marc,Z39.50,我正在解析一个从国会图书馆下载的MARC文件。我已使用PyZ3950成功下载了该记录,但当我尝试使用PyMarc解析该文件时,出现以下错误: Traceback (most recent call last): File "test.py", line 13, in <module> for record in reader: File "build/bdist.macosx-10.9-intel/egg/pymarc/reader.py", line 83, in

我正在解析一个从国会图书馆下载的MARC文件。我已使用PyZ3950成功下载了该记录,但当我尝试使用PyMarc解析该文件时,出现以下错误:

Traceback (most recent call last):
  File "test.py", line 13, in <module>
    for record in reader:
  File "build/bdist.macosx-10.9-intel/egg/pymarc/reader.py", line 83, in next
ValueError: invalid literal for int() with base 10: '<PyZ3'
你的声明:

res = conn.search(query)
返回相应的
结果集

resultSet
中的每条记录
r
都有
r.data

因此,您必须向MARCReader提供每个
r.data
,或者将它们全部连接起来

这将有助于:

from PyZ3950 import zoom, zmarc
from pymarc import MARCReader
conn = zoom.Connection('z3950.loc.gov', 7090)
conn.databaseName = 'VOYAGER'
conn.preferredRecordSyntax = 'USMARC'
query = zoom.Query('CCL', 'ti="1066 and all that"')
res = conn.search(query)
marc = ''
for r in res:
    marc = marc + r.data
reader = MARCReader(marc)
for record in reader:
        print record.title()
conn.close()

你能发布完整的回溯,而不仅仅是错误信息吗?我不知道此错误消息与代码的关系。我添加了完整的回溯。
reader=MARCReader(res)
?为什么要将其转换为字符串?MARCReader只接受字符串或缓冲区(res不是)。
from PyZ3950 import zoom, zmarc
from pymarc import MARCReader
conn = zoom.Connection('z3950.loc.gov', 7090)
conn.databaseName = 'VOYAGER'
conn.preferredRecordSyntax = 'USMARC'
query = zoom.Query('CCL', 'ti="1066 and all that"')
res = conn.search(query)
marc = ''
for r in res:
    marc = marc + r.data
reader = MARCReader(marc)
for record in reader:
        print record.title()
conn.close()