@zero_zaki_ghost ということなんですが、他にいい方法ないですかねーw
@noellabo そう言えばちょっと前にブックマーク整理する方法の話、僕とうちの鯖缶のはんさんとで言ってましたね。20件はあまりにもあまりにもですね
@zero_zaki_ghost favouritesのコードと同じでいいんで、ひっぱってきてMastodon.pyを書き換えちゃえばいいんですけど、なんか手軽にできますよ! にならないので……。
まず、フォークします! からはじめたくないw
@noellabo ElasticsearchのAPIでブックマーク管理する方法がある、ってはんさんが言ってたんですけど、それだとラクなんですかね。僕は中身見てないので分からないですが。
@zero_zaki_ghost 鯖缶じゃなくてユーザー向けの、簡易スクリプトを紹介しようっていう目的のものなので、さすがにElasticsearchのAPIはたたけない……(ダダ漏れ)
@noellabo paramsで件数指定できないんですかね?(githubのコードちょっと見ただけなのできちんと理解していませんが
@popn_ja params、なぜかbookmarksにだけついてないんですよ。Mastodon側はもちろん対応してますが、Mastodon.pyがw
@noellabo こいつですよね?
https://github.com/halcy/Mastodon.py/blob/master/mastodon/Mastodon.py
limitは違うのか?内部でparams読んでいるような気もするが。
@popn_ja そして、記事の方はこういう感じです。
https://blog.noellabo.jp/entry/2021/03/07/153405
もう面倒くさいから公開しちゃったw
@popn_ja rubyみたいなことできるのかなー。そこまでよく分かってないですw
@noellabo わたしも理解できていませんが、
return self.__api_request('GET', '/api/v1/bookmarks')
の部分が本体なので、
params = self.__generate_params(locals())
return self.__api_request('GET', '/api/v1/bookmarks, params)
のdefを上書きできればできそうですよね。selfがダメなのかな?
@popn_ja オブジェクトに外からメソッド追加できればいいんですが……もうちょっとやってみるか
@noellabo ちょっとこっちでも試行錯誤してみますねー
@noellabo こんな感じで作ってみましたー
import csv
from mastodon import Mastodon
class Mastodon2(Mastodon):
def test(self, limit=None):
params = super()._Mastodon__generate_params(locals())
return super()._Mastodon__api_request('GET', '/api/v1/bookmarks', params)
pass
mastodon = Mastodon2(
access_token = '',
api_base_url = 'https://popon.pptdn.jp'
)
toots = mastodon.test(100)
あと同じなので省略。
@popn_ja おかげさまでなんとかなりました!
https://fedibird.com/@noellabo/105848489969959147
@noellabo おー、よかったです!
@noellabo function上書きというかそういうのできないんですかね?>python。まあ、そこの部分だけコード追加するのと同じになっちゃいますが。