Socket
Book a DemoInstallSign in
Socket

chzzk-sdk

Package Overview
Dependencies
Maintainers
1
Versions
4
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

chzzk-sdk

An unofficial Python SDK Library for CHZZK

pipPyPI
Version
0.1.3
Maintainers
1

chzzk-sdk

네이버 라이브 스트리밍 서비스 치치직(CHZZK)의 비공식 API 라이브러리.
공부 목적으로 만들었으며, 참조한 레포는 하단의 References에 명시했습니다.

  • 로그인 (쿠키 사용)
  • 검색 (채널, 영상, 생방송)
  • 채널 정보 조회
  • 방송 상태 및 상세 정보 조회
  • 채팅 보내기
  • 이벤트 구독
    • 연결 상태 (on_connect, on_disconnect)
    • 채팅 (on_chat)
    • 방송 상태 (on_broadcast_open, on_broadcast_close)
    • 후원 (on_donation)
    • 구독 (on_subscription)
    • 상단 고정 (on_pin, on_unpin)
    • 시스템 메시지 (on_system_message)
    • 메시지 관리
    • 그 외 (on_recent_chat, on_notice, on_blind, on_mission_pending, on_mission_approved, on_mission_rejected, on_mission_completed)
  • 채팅 커맨드 생성 @client.commands(name="커맨드이름")
  • 관리 (채팅 제한, 상단 고정 설정)

Requirements

  • Python 3.11+

Installation

pip install chzzk-sdk

Example

import asyncio

from chzzk import ChzzkChat, Chzzk
from chzzk.model import ChatMessage

from dotenv import dotenv_values


env = dotenv_values(".env")
chzzk = Chzzk().from_data(auth=env.get("AUTH"), session=env.get("SESSION"))
chat = ChzzkChat(chzzk=chzzk, prefix="!") # commands를 위한 prefix 지정


@chat.event
async def on_connect():
    print(f"on_connect")
    await chat.send_chat("on_connect test")


@chat.event
async def on_chat(message: ChatMessage):
    print(f"on_chat: {message.content}")

    
@chat.commands(name="공지")
async def notice(message: ChatMessage, *args):
    await chat.pin_message(message=message)


# name가 없으면, 함수이름이 커맨드 명령어 이름이 됨.
@chat.commands()
async def 공지해제(*args):
    await chat.unpin_message()


@chat.commands(name="덧셈")
async def plus(message: ChatMessage, *args):
    nums = list(map(lambda x: int(x), args))
    await chat.send_chat(f"덧셈 결과: {sum(nums)}")


async def main():
    channels = await chzzk.search.channels("갈대s")
    channel_id = channels[0].channel.channel_id
    await chat.run(channel_id=channel_id)

if __name__ == "__main__":
    asyncio.run(main())

+ 간단한 tts-bot 코드 : https://github.com/westreed/ChzzkBot

References

FAQs

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts