flowchart TB
    n1([開始])
    n2([結束])
    n3[&amp;&#35;39;\n        根據技術 ID 獲取技術資訊\n\n        Args:\n ...]
    n4{if not self.attack_data}
    n5[return None]
    n6[]
    n7[try]
    n8[techniques = self.attack_data.get...]
    n9{for technique in techniques}
    n10[external_refs = technique.get&#40;&amp;&#35;39;exter...]
    n11{for ref in external_refs}
    n12{if ref.get&#40;&amp;&#35;39;source_name&amp;&#35;39;&#41;...}
    n13[return &#123;&amp;&#35;39;id&amp;&#35;39;: technique_id, ...]
    n14[]
    n15[]
    n16[]
    n17[return None]
    n18[]
    n19[except Exception]
    n20[logger.error&#40;&amp;&#35;39;get_technique_failed&amp;&#...]
    n21[return None]
    n1 --> n3
    n3 --> n4
    n4 -->|Yes| n5
    n4 -->|No| n6
    n5 --> n6
    n6 --> n7
    n7 --> n8
    n7 --> n19
    n8 --> n9
    n9 -->|Yes| n10
    n9 -->|No| n16
    n10 --> n11
    n11 -->|Yes| n12
    n11 -->|No| n15
    n12 -->|Yes| n13
    n12 -->|No| n14
    n13 --> n14
    n14 --> n11
    n15 --> n9
    n16 --> n17
    n17 --> n18
    n18 --> n2
    n19 --> n20
    n20 --> n21
    n21 --> n18