handle multiple transcribers

main
jgenero 3 years ago
parent 003ae57f46
commit 7117709a96

@ -104,9 +104,9 @@ def __find_transcribers(folder: str)-> None:
for acte in sorted(os.listdir(folder)):
if acte.endswith(".xml"):
soup = make_soup(os.path.join(folder, acte))
transcriber = soup.fileDesc.titleStmt.respStmt
for name in transcriber.find_all("name"):
transcribers.append(name.text)
transcriber = soup.fileDesc.titleStmt
for item in transcriber.find_all("respStmt"):
transcribers.append(item.find("name").text)
return set(transcribers)
def _create_agent(name_lst: list)-> None:
@ -163,10 +163,10 @@ def _create_transcribed_by(folder: str)-> None:
soup = make_soup(os.path.join(folder, acte))
acte_q = [t.id_acte for t in Acte.select().where(
Acte.filename == acte.replace(".xml", ""))]
transcriber = soup.fileDesc.titleStmt.respStmt
for name in transcriber.find_all("name"):
transcriber = soup.fileDesc.titleStmt
for item in transcriber.find_all("respStmt"):
agent_q = [t.id_agent for t in Agent.select().where(
Agent.agent_name == name.text)]
Agent.agent_name == item.find("name").text)]
transcribed.append({"transcr_acte": acte_q[0],
"transcr_agent": agent_q[0]})
for data in tqdm(transcribed, desc="Populating Transcribed_by..."):

@ -86,11 +86,10 @@ def acte(house=None, prince=None, acte_id=None):
acte_diplo_type = t.diplo_type_acte
q_agent = [t.agent_name for t in Agent.select().where(
Agent.id_agent ==
[t.transcr_agent for t in Transcribed_by.select().where(
Transcribed_by.transcr_acte == acte_number)][0])]
transcriber = q_agent[0]
transcribers = [[t.agent_name for t in Agent.select().where(
Agent.id_agent == name_id)][0]
for name_id in [t.transcr_agent for t in Transcribed_by.select().where(
Transcribed_by.transcr_acte == acte_number)]]
place = [t.placename for t in Production_place.select().where(
Production_place.id_place == acte_place_id)]
@ -129,7 +128,7 @@ def acte(house=None, prince=None, acte_id=None):
infos=q_acte, place=place[0], doc=doc[0][0], arch=inst[0],
diplo=diplo_t[0].replace("_", " "), state=state[0],
output_doc=output_doc, name_prince=prince_name[0],
transcriber=transcriber)
transcribers=transcribers)
@main.route("/contact")
def contact() -> t.Text:

@ -17,6 +17,10 @@
<p>{{state}}, {{diplo}}, {{arch}}, {{doc}}, {{item.ref_acte}}.</p>
{% endfor %}-->
{{output_doc|safe}}
<p class="font-italic font-weight-light fs-6">Transcription : {{transcriber}}.<p>
<p class="font-italic font-weight-light fs-6">
Transcription : {% for name in transcribers %}{% if name == transcribers[0] %}{{name}}{% elif name == transcribers[-1] %} et {{name}}{% else %}, {{name}}{% endif %}{% endfor %}.
</p>
<!--<p class="font-italic font-weight-light fs-6">Transcription : {{transcriber}}.</p>-->
</div><!-- /.container -->
{% endblock %}
Loading…
Cancel
Save