Luca448 Claude Sonnet 5.5 commited on
Commit
ccc0d70
·
1 Parent(s): 8bbfb78

fix(iserv): no repeated text from merged DOCX cells

Browse files

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>

Files changed (1) hide show
  1. iserv-filter/taskfilter.py +6 -1
iserv-filter/taskfilter.py CHANGED
@@ -42,7 +42,12 @@ def _docx(data):
42
  from docx import Document
43
 
44
  doc = Document(io.BytesIO(data))
45
- return "\n".join([p.text for p in doc.paragraphs] + [c.text for t in doc.tables for r in t.rows for c in r.cells])
 
 
 
 
 
46
 
47
 
48
  def _html(data):
 
42
  from docx import Document
43
 
44
  doc = Document(io.BytesIO(data))
45
+ cells = {} # a merged cell is returned once per grid column it spans: take each one only once
46
+ for t in doc.tables:
47
+ for r in t.rows:
48
+ for c in r.cells:
49
+ cells.setdefault(c._tc, c.text)
50
+ return "\n".join([p.text for p in doc.paragraphs] + list(cells.values()))
51
 
52
 
53
  def _html(data):