Showroomの仕様変更とその対応の履歴
Showroomのシステムの手直しはしょっちゅう行われているみたいですが、ここに取り上げるのはこれまで紹介したツール類(星集め・種集めツール、星投げ・種投げツール、カウントツール、イベントでの獲得ポイント・イベント貢献ランキング取得ツール)の挙動がおかしくなるようなケースについてです。またそれ以外になんらかの理由でツールのおおきな手直しをしたケース等についても記しておきます。
上に記したようなツールが動かなくなった場合は該当するものがないか確認をお願いします。
---------
2019年10月23日
Google Chromeのバージョンアップがあった模様です。
Chrome Driverの更新が必要です。最新バージョンは ChromeDriver 78.0.3904.70 となります。
2019年9月17日
新しいバージョンの星集め・星投げ・カウントツールを作っています。
・できるだけハードコーディングを避ける(たいていの場合何もしなくてもジャンルの変更に対応できます)
・各機能をモジュール化してメンテナンス性を向上。
を目標にしており、再利用がこれまでより容易になっています。
「SHOWROOM 新・自動三周ツール -- GO言語によるブラウザ制御 (1) main()」
2018年10月31日(16時頃)
★ 「Showroom - 自動星集め・星投げ・カウントツール)」
ジャンルの“人気”と“アイドル“の間に“ハロウィン”が追加されました。このためジャンルを示すインデックスを変更する必要があります。
・アマチュア枠についてはプログラムの先頭にある
const Amateur = 9 を
const Amateur = 8 と
変更して対応しました。
・公式枠については
StartJ,StopJの設定で 2となっているところを3、6となっているところを7とします。
それぞれ2箇所。
GetNumOfStarsの最後の引数2を3とします(2箇所)
この変更は今日深夜から明日未明にかけてもとの状態に戻されるのではないかと思われます。
今後このような変更が頻発することが考えられるので公式枠のインデックス用に
const Official_b = 3
const Official_e = 7
を使うことにしました。場合によっては外部の設定ファイルからこの値を読み込むようにした方がいいかもしれません。
2018年9月1日(09時頃)
プログラムの先頭にある
const Amateur = 9を
const Amateur = 8と変更して対応しました。
★ 「Showroom - 自動三周ツール(もう一つの自動星集め・星投げ・カウントツール)」
記事中に説明があります。
このツールに関しては改訂版を提供していただいていますので、近々差し替えます。
---------
2018年7月15日(17時頃)
★ 「Showroom - イベントの獲得ポイント数を取得して記録するツール」
イベントでの獲得ポイントの表示部分で
"次のレベルまであと "
とあったところが
"目標達成まであと "
と変更されました。このため獲得ポイントを取得できなくなりました。
ScanActive() (showroom.go)の該当部分を修正し、RoomList.txtで指定した獲得ポイント取得対象配信者リストの第7フィールドが“2”のときには"目標達成まであと "の後からポイントを取得するようにしました。
---------
2018年04月13日(17時頃)
このため種集めで配信ルーム一覧への移行で(スポーツ枠の次にある)アマチュア枠への移行が行われないなど正常に機能しなくなりました。
プログラムの先頭にある
const Amateur = 8を
const Amateur = 9と変更して対応しました。
-------------------------
参考
「Showroom - 自動星集め・星投げ・カウントツール)」 (使用法とソースつき)
「Showroom - 自動三周ツール(もう一つの自動星集め・星投げ・カウントツール)」
「Showroom - イベントの獲得ポイント数を取得して記録するツール」
「Showroom - 福引するプログラムとその結果 (1)」
「Showroomの複数アカウント(複アカ、複垢)について考えてみた(1)」
「Showroom - 複数アカウント(複垢)問題の真実 - 実験計画」
「Showroomの重複アカウント(複垢)減算はこうして起きる」
「Showroomでの自動星集めの試み (3) ガチイベ、最後の5分間
「Showroom ラスカルイベの最後の5分間」
「Showroomでの自動星集めの試み (1)」
「Showroomでの自動星集めの試み (2) 配信ルームの一覧を作る」
「Showroomでの自動星集めの試み (4) 星集めツール」
「Showroomでひたすらリスナーレベルを上げるための星集めツール(Go/Agouti)」
「超初心者のGo言語/agouti - ブラウザ操作の基本の基本」
「超初心者のGo言語 - 複数の戻り値をもつ関数」
「超初心者のGo言語 - もっとも簡単なGoroutine(並列処理)」
---------------------
「GoDoc - package agouti」
「Qiita @0829 - Goではじめてみたブラウザの自動操作」
「Qiita @tenten0213 - agoutiというWebDriverクライアントを使って面倒な作業を自動化する」
「Qiita @masaru_b_cl - Windows上でGo言語初心者向け学習環境を作る」
「はじめてのGo言語」
「天才まくまくノート - まくまく Hugo/Go ノート - 関数を定義する (func)」
「Qiita @TakaakiFuruse - Golang Goの並列処理を学ぶ(goroutine, channel)」
「Qiita @To_BB - Rubyエンジニアがゴルーチン(Go言語)を学んでみた【初心者向け】」
「Qiita @fukumone - goroutine 使い方まとめ」
« 水を注いだコップの中のコインは真上に浮き上がって見えるのか? | トップページ | Showroom - 複数アカウント(複垢)問題の真実 - 実験計画(実験結果追記) »
「パソコン・インターネット」カテゴリの記事
- さくらインターネットのレンタルサーバーでGOで書いたCGIを動かした(苦労)話(2021.04.19)
- SHOWROOMのAPI - 「ライブ情報」の取得(GO言語のソースつき)(2019.10.26)
- SHOWROOM 星集め・星投げツール スケジュールの詳細化 BreakDownSchedule() (三周のやり方を例に)(2019.09.25)
- SHOWROOM 新・自動三周ツール -- GO言語によるブラウザ制御 (1) main()(2019.09.17)
コメント
この記事へのコメントは終了しました。
« 水を注いだコップの中のコインは真上に浮き上がって見えるのか? | トップページ | Showroom - 複数アカウント(複垢)問題の真実 - 実験計画(実験結果追記) »
似たようなことをPythonでしているものです。ハロウィンの時のようにジャンルが増えることがあるので、私はあくまでジャンル名で選択しています。ご参考までにコードの一部を少し修正したものを示します。
found = RESULT_FAILED
genre_list = driver.find_element_by_id("js-categorymenu-list").text.split() #ここでジャンル一覧を持ってくる
for i in range(0,5): #一発で見つからない場合があるのでリトライ
try:
for i, name in enumerate(genre_list,1):
if "アイドル" == name:
driver.find_element_by_xpath("//ul[@id='js-categorymenu-list']/li[" + str(i) + "]").click()
found = RESULT_SUCCESS
break
except:
sleep(0.1)
if found == RESULT_FAILED:
log_error("Failed to select genre :" + str(genre))
return RESULT_FAILED
投稿: ちびちょ | 2018年11月17日 (土) 01時20分
コメントありがとうございます。
ご指摘のとおり何番目かで判断するのは間違ってるというか不適切(?)ですね。
今、別の問題を抱えていてそっちの方の改善に手をとられているのですが、ゆくゆくこの問題は対応したいと思っています。
わざわざソースもご提示いただきありがとうございます m(._.)m
プログラム修正のとき参考にさせていただきます。
投稿: セッピーナ | 2018年11月17日 (土) 20時28分