Explorar el Código

fix: probiotic species-level extraction (22 items), inline format timeout

asus hace 2 meses
padre
commit
399bd19474

+ 80 - 34
docs/参考资料/501999942-某人.json

@@ -3370,58 +3370,104 @@
     ],
     "益生菌": [
       {
-        "名称": "拟杆菌⻔ Bacteroidetes",
-        "丰度%": "76.721%",
-        "人群水平%": "95%",
-        "检出率%": "98.03%"
+        "名称": "乳杆菌属 Lactobacillus",
+        "丰度%": "0.743%",
+        "人群水平%": "73%",
+        "检出率%": "91.83%"
       },
       {
-        "名称": "厚壁菌⻔ Firmicutes",
-        "丰度%": "21.168%",
-        "人群水平%": "28%",
-        "检出率%": "98.95%"
+        "名称": "罗氏乳杆菌 Lactobacillus rogosae",
+        "丰度%": "0.737%",
+        "人群水平%": "80%",
+        "检出率%": "76.92%"
       },
       {
-        "名称": "变形菌⻔ Proteobacteria",
-        "丰度%": "1.129%",
-        "人群水平%": "8%",
-        "检出率%": "93.53%"
+        "名称": "双歧杆菌属 Bifidobacterium",
+        "丰度%": "0.240%",
+        "人群水平%": "50%",
+        "检出率%": "97.12%"
       },
       {
-        "名称": "放线菌⻔ Actinobacteria",
-        "丰度%": "0.533%",
-        "人群水平%": "50%",
-        "检出率%": "94.62%"
+        "名称": "⻘春双歧杆菌 Bifidobacterium adolescentis",
+        "丰度%": "0.209%",
+        "人群水平%": "98%",
+        "检出率%": "95.67%"
       },
       {
-        "名称": "黏㬵球形菌⻔ Lentisphaerae",
-        "丰度%": "0.037%",
-        "人群水平%": "94%",
-        "检出率%": "18.42%"
+        "名称": "⻓双歧杆菌 Bifidobacterium longum",
+        "丰度%": "0.027%",
+        "人群水平%": "91%",
+        "检出率%": "73.08%"
       },
       {
-        "名称": "疣微菌⻔ Verrucomicrobia",
-        "丰度%": "0.013%",
-        "人群水平%": "56%",
-        "检出率%": "56.29%"
+        "名称": "罗伊氏乳杆菌 Lactobacillus reuteri",
+        "丰度%": "0.003%",
+        "人群水平%": "99%",
+        "检出率%": "0.96%"
       },
       {
-        "名称": "螺旋体 Spirochaetes",
-        "丰度%": "0.007%",
-        "人群水平%": "97%",
-        "检出率%": "4.04%"
+        "名称": "双歧双歧杆菌 Bifidobacterium bifidum",
+        "丰度%": "ND"
+      },
+      {
+        "名称": "链状双歧杆菌 Bifidobacterium catenulatum",
+        "丰度%": "ND"
       },
       {
-        "名称": "厚壁菌/拟杆菌21.6%",
-        "丰度%": "78.4%"
+        "名称": "假⻓双歧杆菌 Bifidobacterium pseudolongum",
+        "丰度%": "ND"
       },
       {
-        "名称": "您的厚壁菌氏拟杆菌氏值为:",
-        "丰度%": "0.28"
+        "名称": "⾼卢双歧杆菌 Bifidobacterium gallicum",
+        "丰度%": "ND"
       },
       {
-        "名称": "核心菌属",
-        "丰度%": "85"
+        "名称": "排泄物双岐杆菌 Bifidobacterium stercoris",
+        "丰度%": "ND"
+      },
+      {
+        "名称": "副干酪乳杆菌 Lactobacillus paracasei",
+        "丰度%": "ND"
+      },
+      {
+        "名称": "植物乳杆菌 Lactobacillus plantarum",
+        "丰度%": "ND"
+      },
+      {
+        "名称": "约氏乳杆菌 Lactobacillus johnsonii",
+        "丰度%": "ND"
+      },
+      {
+        "名称": "瑞一乳杆菌 Lactobacillus helveticus",
+        "丰度%": "ND"
+      },
+      {
+        "名称": "动物双歧杆菌 Bifidobacterium animalis",
+        "丰度%": "ND"
+      },
+      {
+        "名称": "发酵乳杆菌 Lactobacillus fermentum",
+        "丰度%": "ND"
+      },
+      {
+        "名称": "短双歧杆菌 Bifidobacterium breve",
+        "丰度%": "ND"
+      },
+      {
+        "名称": "⿏李糖乳杆菌 Lactobacillus rhamnosus",
+        "丰度%": "ND"
+      },
+      {
+        "名称": "短乳杆菌 Lactobacillus brevis",
+        "丰度%": "ND"
+      },
+      {
+        "名称": "德氏乳酸乳杆菌 Lactobacillus delbrueckii",
+        "丰度%": "ND"
+      },
+      {
+        "名称": "嗜酸乳杆菌 Lactobacillus acidophilus",
+        "丰度%": "ND"
       }
     ],
     "有害菌属": [

+ 8 - 2
docs/参考资料/extract_full_report_v5.py

@@ -691,8 +691,14 @@ def extract_bacteria_tables(pdf_path):
         core_genus.extend(rows)
     all_tables['核心菌属'] = core_genus
 
-    # 益生菌
-    prob_rows = _parse_bacteria_table(reader, None, full_text, '益生菌', fmt, skip_header=True)
+    # 益生菌(使用更精确的表头定位,跳过前面的说明文字)
+    prob_marker = '仅列出丰度前22的益生菌种'
+    prob_sidx = full_text.find(prob_marker)
+    if prob_sidx != -1:
+        # 直接使用精确位置附近的文本
+        prob_rows = _parse_bacteria_table(reader, None, full_text, prob_marker, fmt, skip_header=True)
+    else:
+        prob_rows = _parse_bacteria_table(reader, None, full_text, '益生菌', fmt, skip_header=True)
     all_tables['益生菌'] = [r for r in prob_rows if r.get('名称') and r['名称'] not in
         ['我的益生菌都为ND', '仅列出丰度前22的益生菌种。']]