Try to use Label Studio. It supports Simple Text & HTML NER tagging and much more.
![enter image description here](https://i.stack.imgur.com/zPMcg.png)
Input to Label Studio for task on the screenshot (HTML code packed to JSON):
{
"text": "<div style=\"max-width: 750px\"><div style=\"clear: both\"><div style=\"float: right; display: inline-block; border: 1px solid #F2F3F4; background-color: #F8F9F9; border-radius: 5px; padding: 7px; margin: 10px 0;\"><p><b>Jules</b>: No no, Mr. Wolfe, it's not like that. Your help is definitely appreciated.</p></div></div><div style=\"clear: both\"><div style=\"float: right; display: inline-block; border: 1px solid #F2F3F4; background-color: #F8F9F9; border-radius: 5px; padding: 7px; margin: 10px 0;\"><p><b>Vincent</b>: Look, Mr. Wolfe, I respect you. I just don't like people barking orders at me, that's all.</p></div></div><div style=\"clear: both\"><div style=\"display: inline-block; border: 1px solid #D5F5E3; background-color: #EAFAF1; border-radius: 5px; padding: 7px; margin: 10px 0;\"><p><b>The Wolf</b>: If I'm curt with you, it's because time is a factor. I think fast, I talk fast, and I need you two guys to act fast if you want to get out of this. So pretty please, with sugar on top, clean the car.</p></div></div></div>"
}
Output:
[
{
"id": "9fkAdIXgkV",
"from_name": "ner",
"to_name": "text",
"source": "$text",
"type": "hypertextlabels",
"value": {
"start": "/div[1]/div[1]/div[1]/p[1]/b[1]/text()[1]",
"end": "/div[1]/div[1]/div[1]/p[1]/b[1]/text()[1]",
"text": "Jules",
"startOffset": 0,
"endOffset": 5,
"htmllabels": [
"Person"
]
}
},
{
"id": "YMeGv8ndLx",
"from_name": "ner",
"to_name": "text",
"source": "$text",
"type": "hypertextlabels",
"value": {
"start": "/div[1]/div[1]/div[1]/p[1]/text()[1]",
"end": "/div[1]/div[1]/div[1]/p[1]/text()[1]",
"text": "Wolfe",
"startOffset": 13,
"endOffset": 18,
"htmllabels": [
"Organization"
]
}
},
{
"id": "vgGGhXRFcr",
"from_name": "ner",
"to_name": "text",
"source": "$text",
"type": "hypertextlabels",
"value": {
"start": "/div[1]/div[2]/div[1]/p[1]/text()[1]",
"end": "/div[1]/div[2]/div[1]/p[1]/text()[1]",
"text": " Look, Mr. Wo",
"startOffset": 1,
"endOffset": 14,
"htmllabels": [
"Person"
]
}
},
{
"id": "oJxIH-ztQv",
"from_name": "ner",
"to_name": "text",
"source": "$text",
"type": "hypertextlabels",
"value": {
"start": "/div[1]/div[2]/div[1]/p[1]/text()[2]",
"end": "/div[1]/div[2]/div[1]/p[1]/text()[2]",
"text": "people bar",
"startOffset": 38,
"endOffset": 48,
"htmllabels": [
"Organization"
]
}
}
]