Published on

スキしたユーザーのページリンクを追加した

Authors
  • avatar
    Name
    Nomad Dev Life
    Twitter
2025-04-12-title

noteLikerStatsをupdateした

noteLikerStatsを更新しました。更新内容は以下の2点です。

  1. 集計結果に"スキ"したユーザーのnoteのページへのリンクを追加した
  2. "つぶやき"を集計するとエラーで止まる

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")
    })
2025-04-12-img1

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のページへのリンクを追加しました。

日頃"スキ"してくれている人を確認し、"スキ"のお返しをしてみてはどうでしょうか?