- Published on
スキしたユーザーのページリンクを追加した
- Authors
- Name
- Nomad Dev Life

noteLikerStatsをupdateした
noteLikerStatsを更新しました。更新内容は以下の2点です。
- 集計結果に"スキ"したユーザーのnoteのページへのリンクを追加した
- "つぶやき"を集計するとエラーで止まる
1. 集計結果に"スキ"したユーザーのnoteのページへのリンクを追加した
これまでは集計結果に"スキ"したユーザーのニックネームのみを表示していましたが、いわゆるnote IDをリンクとして表示するようにしました。
Streamlitのグリッドは、リンクを表示する為のLinkColumnというものがあり、それを使っています。
c1.dataframe(agg_df, height=470, column_config={
"user": st.column_config.TextColumn("user", width="large"),
"url": st.column_config.LinkColumn("url", width="medium", display_text=r"^https://note\.com/(.*)$"),
"count": st.column_config.NumberColumn("スキ", width="small")
})

2. "つぶやき"を集計するとエラーで止まる
noteで"つぶやき"したことが無かったので気が使ったのですが、"つぶやき"の"スキ"を集計しようとするとエラーになっていました。
原因は、ログや集計状況を出力する際に表示している記事のタイトルに相当するものが"つぶやき"には無かった為です。
タイトルに相当するものが無い場合は、本文の最初の10文字を取得して表示するように変更しました。
def _get_title(content: any):
title = content['name']
if title is None:
body = content['body']
body_len = len(body)
if body_len > 10:
title = body[:10]
else:
title = body
return title
おわりに
今回は"つぶやき"を集計できないBugのfixと、"スキ"したユーザーのnoteのページへのリンクを追加しました。
日頃"スキ"してくれている人を確認し、"スキ"のお返しをしてみてはどうでしょうか?