scieloorg / PC-Programs

SciELO PC Programs
7 stars 24 forks source link

[markup xml] Geração do XML não finaliza adequadamente quando o arquivo não contém fpage #3264

Closed robertatakenaka closed 4 years ago

robertatakenaka commented 4 years ago

Descrição do problema

Geração do XML a partir do Markup não finaliza adequadamente quando o arquivo não contém fpage

Passos para reproduzir o problema

  1. Execute com o pacote em anexo: python xml_package_maker.py test1/work/187-4150-1-PB/187-4150-1-PB.sgm.xml pb
  2. Observe o erro apresentado
    xml
    SPS version: 1.4
    DTD version: 1.4
    ERROR: unsupported operand type(s) for +: 'NoneType' and 'str'
    Traceback (most recent call last):
    File "/Users/roberta.takenaka/github.com/scieloorg/PC-Programs/src/scielo/bin/xml/prodtools/processing/sgmlxml.py", line 609, in pack
    pkg = self._make_package()
    File "/Users/roberta.takenaka/github.com/scieloorg/PC-Programs/src/scielo/bin/xml/prodtools/processing/sgmlxml.py", line 563, in _make_package
    self.FILES.tmp_doc_pkg_path)
    File "/Users/roberta.takenaka/github.com/scieloorg/PC-Programs/src/scielo/bin/xml/prodtools/processing/sgmlxml.py", line 420, in __init__
    self.new_name = PackageName(self.doc).generate(acron)
    File "/Users/roberta.takenaka/github.com/scieloorg/PC-Programs/src/scielo/bin/xml/prodtools/processing/sgmlxml.py", line 106, in generate
    parts = [self.issn, acron, self.doc.volume, self.issueno, self.suppl, self.last, self.doc.compl]
    File "/Users/roberta.takenaka/github.com/scieloorg/PC-Programs/src/scielo/bin/xml/prodtools/processing/sgmlxml.py", line 139, in last
    return self.doc.fpage + (self.doc.fpage_seq or "")
    TypeError: unsupported operand type(s) for +: 'NoneType' and 'str'
    Traceback (most recent call last):
    File "xml_package_maker.py", line 4, in <module>
    xpm.main()
    File "/Users/roberta.takenaka/github.com/scieloorg/PC-Programs/src/scielo/bin/xml/prodtools/xpm.py", line 122, in main
    execute(INTERATIVE, xml_list, GENERATE_PMC, sgmxml, acron)
    File "/Users/roberta.takenaka/github.com/scieloorg/PC-Programs/src/scielo/bin/xml/prodtools/xpm.py", line 36, in execute
    pkg = sgmxml2xml.pack()
    File "/Users/roberta.takenaka/github.com/scieloorg/PC-Programs/src/scielo/bin/xml/prodtools/processing/sgmlxml.py", line 613, in pack
    raise e
    File "/Users/roberta.takenaka/github.com/scieloorg/PC-Programs/src/scielo/bin/xml/prodtools/processing/sgmlxml.py", line 609, in pack
    pkg = self._make_package()
    File "/Users/roberta.takenaka/github.com/scieloorg/PC-Programs/src/scielo/bin/xml/prodtools/processing/sgmlxml.py", line 563, in _make_package
    self.FILES.tmp_doc_pkg_path)
    File "/Users/roberta.takenaka/github.com/scieloorg/PC-Programs/src/scielo/bin/xml/prodtools/processing/sgmlxml.py", line 420, in __init__
    self.new_name = PackageName(self.doc).generate(acron)
    File "/Users/roberta.takenaka/github.com/scieloorg/PC-Programs/src/scielo/bin/xml/prodtools/processing/sgmlxml.py", line 106, in generate
    parts = [self.issn, acron, self.doc.volume, self.issueno, self.suppl, self.last, self.doc.compl]
    File "/Users/roberta.takenaka/github.com/scieloorg/PC-Programs/src/scielo/bin/xml/prodtools/processing/sgmlxml.py", line 139, in last
    return self.doc.fpage + (self.doc.fpage_seq or "")
    TypeError: unsupported operand type(s) for +: 'NoneType' and 'str'

Comportamento esperado

Que o programa termine sem apresentar o traceback

Screenshots ou vídeos

n/a

Anexos

teste1.zip

Ambiente utilizado

n/a