David-Fryd / chat-analyzer

A tool used to process and analyze chat data from past live streams, providing summarized information about chat activity over the stream's lifetime.
https://chatanalyze.com
MIT License
15 stars 1 forks source link

project is broken, gives JSONdecode error, had to use chat_downloader separately to get the json file #15

Open 111100001 opened 1 year ago

111100001 commented 1 year ago

json file missing duration

oh nooo

David-Fryd commented 1 year ago

Hi! Are you able to post the full output including the command you ran? Thanks

111100001 commented 1 year ago

C:\Users\fqf1f\Downloads\Twitch-VOD-Chat-Analyzer-main\Twitch-VOD-Chat-Analyzer-main> chat_analyzer https://www.twitch.tv/videos/1825221848 Getting chatlog using Xenonva's chat-downloader (https://github.com/xenova/chat-downloader)... Successfully retrieved chat generator: Title: [DROPS] pushing the limits of mankind forward with each powerful and dominant step Duration: 8:13:20 (29600 seconds) NOTICE: Downloading chats from a url is the largest rate-limiting factor. If you intend to sample the data differently multiple times, consider using chatfile mode, or saving the chat data with --save-chatfile.

Processing (Sampling) chat data... Completion | Processed Media Time | # Messages Processed [WARNING] Retry #1 (sleep for 0s or press Enter). Expecting value: line 1 column 1 (char 0) (JSONDecodeError) [WARNING] Retry #2 (sleep for 1s or press Enter). Expecting value: line 1 column 1 (char 0) (JSONDecodeError) [WARNING] Retry #3 (sleep for 2s or press Enter). Expecting value: line 1 column 1 (char 0) (JSONDecodeError) [WARNING] Retry #4 (sleep for 4s or press Enter). Expecting value: line 1 column 1 (char 0) (JSONDecodeError) [WARNING] Retry #5 (sleep for 8s or press Enter). Expecting value: line 1 column 1 (char 0) (JSONDecodeError)

111100001 commented 1 year ago

i tried a workaround to this by using chat-downloader itself to output the json file and upload it to your visualizer but it gave an error because the json file doesn't have the duration

David-Fryd commented 1 year ago

Xenova's chat downloader does not produce output that is compatible with the visualizer as it does not perform the statistical analysis that the chat-analyzer does. You could, however, download the chat using Xenova's downloader and then use --mode chatfile to pass the chatfile into the chat-analyzer!

Taken from the documentation:

Program Behavior (Mode):


  --mode {url,chatfile,reanalyze}, -m {url,chatfile,reanalyze}
The program can be run in three modes:
NOTE: All modes result in chat analytics output asa .json file.

**'url'** mode (default) downloads raw chat data
    from an appropriate source url, processes the raw
    chat data into samples, and then analyzes the
    samples.

**'chatfile'** mode reads raw chat data from a
    .json file, processes the raw chat data into
    samples, and then analyzes the samples.
                      (We accept raw chat files produced by Xenonva's chat-
    downloader, or by this program through '--save-
    chatfile-output').

'reanalyze' mode reads existing sample data
    from a .json file produced by this program in a
    previous run, and recalculates ONLY the post-
    processed data based on the existing samples. (Highlights and spikes are regenerated, the existing
    samples are not affected).```
111100001 commented 1 year ago

another issue came up, reinstalled python and this project, but issue persists

chat-analyzer --mode chatfile --platform twitch outputOfChatDownloader.json

Processing (Sampling) chat data... Completion | Processed Media Time | # Messages Processed Traceback (most recent call last)::56 | 3600 File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.10_3.10.3056.0_x64__qbz5n2kfra8p0\lib\runpy.py", line 196, in _run_module_as_main return _run_code(code, main_globals, None, File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.10_3.10.3056.0_x64qbz5n2kfra8p0\lib\runpy.py", line 86, in _run_code exec(code, run_globals) File "C:\Users\fqf1f\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\Scripts\chat-analyzer.exe\main__.py", line 7, in File "C:\Users\fqf1f\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\chat_analyzer\cli.py", line 209, in main run(**kwargs) File "C:\Users\fqf1f\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\chat_analyzer\analyzer.py", line 261, in run chatAnalytics.process_chatlog(chatlog, source, process_settings) File "C:\Users\fqf1f\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\chat_analyzer\dataformat.py", line 638, in process_chatlog self.process_message(msg) File "C:\Users\fqf1f\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\chat_analyzer\dataformat.py", line 770, in process_message super().process_message(msg) File "C:\Users\fqf1f\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\chat_analyzer\dataformat.py", line 460, in process_message authID = author['id'] KeyError: 'id'