class Mildom_analyze
Attributes
video_id[R]
videoinfo[R]
videoinfo_request_status[R]
Public Class Methods
new(url)
click to toggle source
# File lib/site_list/mildom_analyze.rb, line 14 def initialize(url) @VIDEOINFO_REQEST_URL="https://cloudac.mildom.com/nonolive/videocontent/playback/getPlaybackDetail?v_id=" @VIDEOINFO_REQEST_PARAMETER="&__platform=web" @CHAT_REQEST_URL="https://cloudac.mildom.com/nonolive/videocontent/chat/replay?video_id=" @CHAT_REQEST_PARAMETER="&time_offset_ms=" @video_url=url @video_id=videoid_get() @videoinfo,@videoinfo_request_status=request_json_parse(@VIDEOINFO_REQEST_URL+@video_id+@VIDEOINFO_REQEST_PARAMETER) @chatlog_filepath="./"+@video_id+".txt" end
Public Instance Methods
chat_scrape(log_flag=true,log_path=@chatlog_filepath)
click to toggle source
# File lib/site_list/mildom_analyze.rb, line 37 def chat_scrape(log_flag=true,log_path=@chatlog_filepath) chat_list=[] next_time=0 time_length=@videoinfo["body"]["playback"]["video_length"] while next_time<=time_length do chat_body=chat_body_get(next_time) chat_body["body"]["models"][0]["detail"][0..-1].each do |chat| chat_list.push chat end next_time=chat_body["body"]["models"][0]["summary"]["end_offset_ms"] progressbar(next_time,time_length) sleep(1) end file_write(chat_list,log_flag,log_path) return chat_list end
Private Instance Methods
chat_body_get(next_time)
click to toggle source
# File lib/site_list/mildom_analyze.rb, line 60 def chat_body_get(next_time) next_url=chat_nextpage_get(next_time) chat_body,_=request_json_parse(next_url) return chat_body end
chat_nextpage_get(time_key)
click to toggle source
# File lib/site_list/mildom_analyze.rb, line 32 def chat_nextpage_get(time_key) return @CHAT_REQEST_URL+@video_id+@CHAT_REQEST_PARAMETER+time_key.to_s end
videoid_get()
click to toggle source
# File lib/site_list/mildom_analyze.rb, line 27 def videoid_get() return @video_url.split("/")[5].split("&")[0] end