概要

「SAT大蔵経DB 2018」は以下のように説明されています。

https://21dzk.l.u-tokyo.ac.jp/SAT2018/master30.php

このサイトは、SAT大蔵経テキストデータベース研究会が提供するデジタル研究環境の2018年版です。
SAT大蔵経テキストデータベース研究会は、2008年4月より、大正新脩大藏経テキスト部分85巻の全文検索サービスを提供するとともに、各地のWebサービスとの連携機能を提供することにより、利便性を高めるとともに、Webにおける人文学研究環境の可能性を追求してきました。
2018年版となるSAT2018では、近年広まりつつある機械学習の技術と、IIIFによる高精細画像との連携、高校生でもわかる現代日本語訳の公開及び本文との連携、といった新たなサービスに取り組んでみました。また、本文の漢字をUnicode10.0に対応させるとともに、すでに公開していたSAT大正蔵図像DBの機能の大部分も統合いたしました。ただし、今回は、コラボレーションを含む仕組みの提供という側面もあり、今後は、この輪組に沿ってデータを増やし、より利便性を高めていくことになります。
当研究会が提供するWebサービスは、さまざまな関係者が提供するサービスや支援に依拠しています。SAT2018で新たに盛り込んだサービスでは、機械学習及びIIIF対応に関しては一般財団法人人文情報学研究所、現代日本語訳の作成に関しては公益財団法人全日本仏教会の支援と全国の仏教研究者の方々のご協力をいただいております。
SAT2018が、仏教研究者のみなさまだけでなく、仏典に関心を持つ様々な方々のお役に立つことを願っております。さらに、ここで提示されている文化資料への技術の適用の仕方が、人文学研究における一つのモデルになることがあれば、なお幸いです。

今回は、上記のDBが公開するテキストデータを対象として、簡単な分析を試みます。

説明

以下の「T0220 大般若波羅蜜多經」のテキストを対象にします。

方法

テキストデータの取得

ネットワークを確認したところ、以下のようなURLでテキストデータを取得することができました。

https://21dzk.l.u-tokyo.ac.jp/SAT2018/satdb2018pre.php?mode=detail&ob=1&mode2=2&useid=0220_,05,0001

0220_,05,0001の部分について、05を06に変えると6巻のデータが取得できました。また、末尾の0001を0011に変更すると、0011の前後を含むテキストが取得できました。

この傾向を踏まえて、以下のようなプログラムを実行しました。

iiifd dddddimmmre eeeeefpppof fffffooom rrrf" rrw"wr"wp"pwg"sirmf_mtttbe" eer"ie"ir"ahe"pfeaoonast" sti"ta"to"git"atilraiort4cF putWhdRhcPel_Ensunsmnseihetorerf_erer_euioieniplxsplrr(pe(qmi_tinn_ioihaoesosrdpflefaataaen)=or_)uemscmshtpltdptsctTlaswgsr=nst:lo_epoheeBteeemseu_err=toe_netastuN[csoue.emsn.lnrvsu=hss:swpeb__cs:_ro"ie=trpss=al(w(H(nos=eu.oorawrsptoinn0ns=st(lu(tfrfTfle:fr=puuig_etasude5suaertshiiiMiBus""lapptepargpl"_"BrneeioeltlLlem0h.fte_aket.=a,ov_eldpqfueeeeaee0ts"h==_sg=_hfslo_a)(uuppp(pcpu(a0tph.hteieist"slmu:p1el,rasaoatvc1plterftr_ndnp_0:uata)sSetotntioh"simxeemse(ldai6miirtofthuhthfl:tliatl=twsa_nd"enfssuit,p)e,u)/(/sdc(r_osas.,(_ue#.pli.:nl:o/"{t_hsgputl[sv_lsg(ef"pt"Sl2uish_oe=apl-p"o"SSerpiwrrou1sd(tsut=g)p(1l0l:oHlteae"ef"umde}omop_e:a"]i7)uTe(std)tr)pezi.plu,lp_gs.t"pMeuphto(kdha(paasept(]Lpro)Haimafb.=tto(osgtae"ln:Tsfsiyl"mhpupterInx.cf)sMyal.)l)ara__D"t"ooeLf(feiu[":tltps,)nr.i)fi.t-1h)hatf[ttcl)ilret]))grrc-e1eoeleeroe:ol1nxn:e:aak_ma]tsttdtyis[e,ea(iodts0fcnn)n.(h_:ro"td,gase=4onhco"]mdttr".uslmoehvjpontblttep)u"he.aumr/p)efprlSoafn.pAogrrispaTbieslag2jveeire0eemr.tss1cna""se8tk)"ru/.Ui"p"ns"Rna)ta"Lgrit".sld"aeb"dn2"ro0ec1qon8unepetwrseetnp.tap.gh"ep"?"imsodfeo=udnedt.a"i"l"&ob=1&mode2=2&useid=0220_{vol}_{page_str}"

上記の処理により、HTMLファイルをダウンロードすることができます。

HTMLファイルの解析

以下のプログラムを実行し、IDごとのテキストを取得します。

iiffddddimmrreeeefppooffffoommrrr"we"mtfrs"wmffs_mttbte"ix"aeoea"iaivoanasqa"tt"pxrtv"tilervaigj4ddRhrEptueShneremnlsm_eraxi_bltmr_aj(safsm_e(ooihaoectnblneantvos)lioavt_)bnmitdpttrgloxpoepo:=llupeo_pmmseu_asoc=tpm_sen_eppr_oplnrmcckiajn.smiaj=ro_H(nat=kb=npst(doai=nls=trfTfpssilgpohfurpnglotiMiBp{nobsineimtprs_n"BlLleim}=cl[n(lpeitem(_eteeanatkolgdde(dnqa=ao_aq(cpugpse.cnsaind(gddpvmudfoatsptxsk]tcaagsm_epeatminti(irtp.atmtl(hxiriilthfsn(_ls=,ieao=fttnanfee,uogsbipo,,bimrgl_upnlusoltltfn.{llasl_lat"Spuo(ieia"fg}e_c._"Stro)fpc"txlrwilsftum:ohf"u:r)k<(tey"lo)i_pau)r)po.s/"n)eb:lmdpp:o(ms:s<at,(eaapmafpp/moa"(ptisiBlasesihfpenaleinp)antii(gfeat>a:fdmlnmsfi.u("nJielega,ilrt")>Sln/)spleei<["Oet*(p"e:afs0)N:=.sim.dup][4hona"(la.1f,tugp")Sns]impsp",ot.lsl))iucrseo"n"plip.r)ghapl"t)#stos(i"_.mbs)t"kUjlj=[(eps.e\:"ydopc"-<sanatl1s=t"r.n]pTe)s"\are""nutr">eh""c,e))l[ae1snv:sse]=ur\ra"el#t_lxaS\sdk"cii>icp"it)=it[Foh1ane]la.srfseyip)rlwsiittt(hs"p<nl/eiswtpamanas>p"pi)it[n0gd]so.esstrniopt()containrelevantdata

結果、以下のようなJSONデータが得られます。

{"""""""TTTTTTT0000000222222222222220000000_______.......00000005555555.......0000000000000000000001111111aaaaaaa00000001234567""""""":::::::""""""""N"<,o,b.u2t2t0o.n"",,class=\"ftntf""\,,"style=\"font-size:8px;padding:2px\"title=\"西\">\n1\n/button>\n西",

分析例

文字の出現頻度を分析してみます。

ifdddddimreeeeefpofffffomrl"wc"ffrg"rp"fmpdftp_mtco"io"roee"er"oaaarornaoa"tu"ertt"ti"rittepiaijldLhnCqu_RunPnhaq_nmnsl_ortotfrtertrcp(cte(oedaoe_u=ernotn_ihr)===h__)ncadptcnxeputnai:at_ttseuhtCtqf_rfotrn"lcroianraso.rcnrps,tmoosp=o(J(nruiuehse_(aau_=nfSfatnnpqaqctcfpdn=csiOijchtdrt.hho"p_th"lNlsteedaahmaeu{id_ga_ieeoeratceorncnacer_mpdpnrf(tetsatthgthtampaaa.sr)a(ettcoasaa_caotttl(e.tro_tpir.(rttirhahodqvespcen}jpaoent),aauax(orc,sacpr_:fdteltfNmsht{ott_s_Cr"(anu)rm(aocnhec("oorf)ceecotrpo")rht:um"i:ysqhnoa_usaon)l(,a(pccn(rptaeo)rt_thtda_ea)f:taocea}accrfsocphrr"tthiept_ass)aealfa_enr:)rreicnr)sass.lh=s)n()"e3:df":c0br"h)ytea:hqrfe)aricertqeufrerneicqnyu.et"nh"ce"iepsr.o"v"i"deddata."""

結果、以下のような結果が得られました。前のステップでHTMLタグなどを完全に除去できていないため、正確な結果ではありませんが、どのような文字がよく使われているのかを概観することができます。

,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,41111888766665555555555444444368210865197319654332210986633981043027446424718639093343050494845114580612816591733917600128707830786396114129512123672380090

まとめ

「SAT大蔵経DB 2018」で公開されているテキストに対して、ごく簡単な分析例を紹介しました。

本DBの公開に関わるすべての方々に感謝いたします。