Documentation
¶
Overview ¶
! Copyright © 2022 chouette.21.00@gmail.com Released under the MIT license https://opensource.org/licenses/mit-license.php
Ver. 0.0.0 srapi.goから分離する。 Ver. 1.0.0 戻り値 status を err に変更する。
! Copyright © 2022 chouette.21.00@gmail.com Released under the MIT license https://opensource.org/licenses/mit-license.php
Ver. 0.0.0 srapi.goから分離する。 Ver. 1.0.0 戻り値 status を err に変更する。
! Copyright © 2022 chouette.21.00@gmail.com Released under the MIT license https://opensource.org/licenses/mit-license.php
Ver. 0.1.0 ApiLiveCurrentUser.goをsrapi.goから分離する。ApiLiveCurrentUser()のRoomIDをstring型に変更する。 Ver. 1.0.0 戻り値 status を err に変更する。
! Copyright © 2022 chouette.21.00@gmail.com Released under the MIT license https://opensource.org/licenses/mit-license.php
Ver. 0.0.0 Ver. 1.0.0 戻り値 status を err に変更する。 Ver. 2.0.0 ExtrRoomLiveByCtg()とExtrRoomLiveByGnr()をRoomOnlivesのメソッドとする。 Ver. 2.0.1 fmt.Errorf()の %v を %w に変更する。 Ver. 3.0.0 ExtrRoomLiveByCtg(), ExtrRoomLiveyypByGnr()をそれぞれExtrByCtg()、ExtrByCtg()に変更する。 Ver. 4.0.0 ExtrByCtg()、ExtrByCtg()の引数を Roomonlives から *RoomOnLives に変更する。 Ver. 4.1.0 上位でsort.Sort()をsort.Slice()に変更したため、sort.Sort()のためのメソッドを削除する。 Ver. 4.1.0 ExtrByCtg()の引数を Roomonlives から *RoomOnLives に変更する(修正もれ)
! Copyright © 2022 chouette.21.00@gmail.com Released under the MIT license https://opensource.org/licenses/mit-license.php
Ver. 0.0.0
! Copyright © 2022 chouette.21.00@gmail.com Released under the MIT license https://opensource.org/licenses/mit-license.php
Ver. 0.0.0 Ver. 0.1.0 リスナー情報 UserDetail にエラーに関するメンバーを追加する(作成済みのプログラムに影響はない) Ver. 1.0.0 戻り値の staus を error 変更する Ver. 1.1.0 err に fmt.Errorf("package.Function: %w", err) を設定する。
! Copyright © 2022 chouette.21.00@gmail.com Released under the MIT license https://opensource.org/licenses/mit-license.php
Ver. 0.0.0 srapi.goから分離する。 Ver. 1.0.0 戻り値の staus を error 変更する
! Copyright © 2022 chouette.21.00@gmail.com Released under the MIT license https://opensource.org/licenses/mit-license.php
Ver. 0.0.0 Ver. 0.0.1 s.Find()のセレクタの冗長部分を削除する。 Ver. 0.0.2 s.Find()のセレクタの先頭に"#js-genre-section-all"を追加する。これがないと不要な要素が検出される。
Index ¶
- func ApiCsrftoken(client *http.Client) (csrftoken string, err error)
- func CrwlFollow(client *http.Client, maxnoroom int) (rooms *[]RoomFollowing, err error)
- func GetPointByApi(client *http.Client, roomid int) (point int, rank int, gap int, eventid int, eventurl string, eventname string, ...)
- type ActiveFanNextLevel
- type CsrfToken
- type Live
- type LiveCurrentUser
- type Lives
- type RoomEvnetAndSupport
- type RoomFollowing
- type RoomOnlives
- type UserDetail
- type UserLogin
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ApiCsrftoken ¶
csrf_tokenを取得する。
func CrwlFollow ¶
func CrwlFollow( client *http.Client, maxnoroom int, ) ( rooms *[]RoomFollowing, err error, )
フォローしているルームの一覧を取得する。
Types ¶
type ActiveFanNextLevel ¶
type ActiveFanNextLevel struct {
Level int // 現在のファンレベル
Next_level struct {
Level int // 次のファンレベル
Conditions []struct {
Condition_details []struct {
Goal int // 次のレベルになるのに必要な要素(視聴時間、ギフト、コメントの数)
Unit string // 単位(分、pt、G、コメント)
Value int // (レベルアップに使った分を除く)現在の実績(手持ちの要素数)(視聴時間、ギフト、コメントの数)
Label string // 次のレベルになるのに必要な要素の詳細(視聴時間、無料ギフト、有料ギフト、コメント数)
}
Label string // 次のレベルになるのに必要な要素(視聴時間、有料ギフト or 無料ギフト、コメント数)
}
}
Title_id int // 不明
}
ファンレベルの進捗状況の詳細
func ApiActivefanNextlevel ¶
func ApiActivefanNextlevel( client *http.Client, userid string, roomid string, ) ( afnl ActiveFanNextLevel, err error, )
ファンレベルの進捗状況を得るためのAPI(/api/active_fan/next_level)を実行する。
type LiveCurrentUser ¶
type LiveCurrentUser struct {
Is_login bool // ログインしているか? ログインしていればtrue
User_id int // リスナーの識別子
Name string // リスナー名
Fan_level int // ファンレベル、Maxが56のやつ
Add_free_gift int // ?
Contribution_point int // おそらく貢献ポイントの累計
Gift_list struct {
Normal []struct {
Gift_id int // ギフトの種別 1であれば赤星、...
Free_num int // Gift_idのギフトの個数
}
}
}
リスナー情報
func ApiLiveCurrentUser ¶
func ApiLiveCurrentUser( client *http.Client, roomid string, ) ( livecurrentuser LiveCurrentUser, err error, )
リスナーに関する情報を取得する
type RoomEvnetAndSupport ¶ added in v0.1.0
type RoomEvnetAndSupport struct {
Event struct {
Event_id int // イベント識別子
Event_url string // イベントのURLの末尾のフィールド
Event_name string // イベント名
Ranking struct {
Rank int // 順位
Point int // 獲得ポイント
Gap int // 上位とのポイント差
}
Quest struct {
Support struct {
Goal_point int // 目標ポイント
Current_point int // 現在のポイント
Support_users []struct {
Point int // ポイント
Order int // 順位
Name string // ユーザー名
User_id int // ユーザー識別子
}
}
Quest_list []struct {
Number_of_items int // アイテム数
Color string // 色
Goal_point int // 目標ポイント
Rest_time int // 残り時間?
Title string // タイトル
Quest_level int // クエストレベル
Is_aquired bool // クエスト獲得フラグ?
}
}
}
}
イベントの順位と獲得ポイント JSONには他にもいろんなフィールドがあります。 ぜったい必要そうなものとフィールドの作りが面倒そうなところだけ構造体にしてあります。
func ApiRoomEventAndSupport ¶ added in v0.1.0
func ApiRoomEventAndSupport( client *http.Client, roomid string, ) ( res *RoomEvnetAndSupport, err error, )
イベントの順位と獲得ポイントを知るAPI(/api/room/event_and_suport)を実行する。
type RoomFollowing ¶
type RoomFollowing struct {
Room_id string // ルームID 配信者を識別する
Room_url_key string // 配信のURLの最後のフィールド
Main_name string // ルーム名
Next_live string // 次の配信時刻
}
フォローしているルームのデータの構造体(必要とするものだけ、残りは取得していません)
type RoomOnlives ¶
type RoomOnlives struct {
// 配信中ルーム一覧
// Onlives []OnLive // ジャンルごとの配信中ルーム一覧
Onlives []struct {
Genre_id int // 0: 人気、 200: フリー、 100(?)〜199(?): 公式、 700〜: 特定属性
Genre_name string // ジャンル名
Lives Lives // 配信中ルーム一覧
}
Bcsvr_post int
Bcsvr_host string
}
func ApiLiveOnlives ¶
func ApiLiveOnlives( client *http.Client, ) ( roomonlives *RoomOnlives, err error, )
配信中のルームの一覧を取得する
type UserDetail ¶
type UserDetail struct {
User_id int // ユーザーID=リスナーの識別子、ログインしていない場合は 0 となる。
Name string // ユーザー名=リスナー名
// エラー情報
// ログインしている場合は空配列となる模様。
// ログインしていない場合は
// Error_user_msg: "Error occured"
// Message: "Not Found"
// Code: 1002
Errors []struct {
Error_user_msg string // エラーメッセージ
Message string // エラー内容
Code int // エラーコード
}
}
リスナー情報
func ApiUserDetail ¶
func ApiUserDetail( client *http.Client, ) ( userdetail *UserDetail, err error, )
(ログインしている)リスナーの情報を取得する