たぶんブラウザじゃないやつでデライトをアレするとアレ。
案の定、(await fetch("https://dlt.kitetu.com/KNo.EDD2")).text()
すると途中で途切れている。つまり、初期のHTMLを処理した後に、JavaScriptを実行することで、追加のデータを取りに行っているということだろう。
読み込み中...のクラス名であるomtで検索してみると、描写後略機能というのがあるらしい。コレやわ。ただ、具体的に何をしているかは分からなかった。
JavaScriptを実行することで、追加のデータを取りに行っている
コレのAPI的ななにかを直叩き出来ると良いかも?ネットワークタブで観察した感じでは、https://dlt.kitetu.com/KNo.EDD2/B3D0?dln&fmt=HTML&hdg_lvl_bs=1&ran=2
からの通信に追加のデータが入っている。アクセスしてみると追加のデータが表示された。コレですねぇ。ただ、投稿内容が完全体で取れたほうが処理的には楽なので、URLをいじってみる。こうじゃ→https://dlt.kitetu.com/KNo.EDD2/B3D0?dln&fmt=HTML
。
クローラーの実装を考えると、中略された輪郭のスクレイピングを追加でするほうが処理を使い回せて、実装がかんたんなんだよなぁ……。
うーん。どったもんかな。投稿の輪郭の詳細ページをスクレイピングすれば、全文が取得されるんだけども、負荷が増えるのは避けたい。
いや、負荷つったって、1分に2,3回のスクレイピングは負荷としてはかなり弱いんじゃないだろうか。念の為に1分に2回のスクレイピングを2分に2回ぐらいにしておくと良さそう?
一旦、投稿の輪郭の詳細ページをスクレイピング・スクレイピングを2分に2回に変更 で行ってみよう。