Basic Feature

클라이언트 (Client)

class Client(loop: AbstractEventLoop | None = None, authorization_key: str | None = None, session_key: str | None = None)

치지직(네이버 스트리밍 서비스) 기능을 제공하기 위한 객체를 제공합니다.

async autocomplete(keyword: str) list[str]

자동 완성된 단어입니다.

매개변수:

keyword (str) – 검색할 단어입니다.

반환:

자동 완성된 단어입니다.

반환 형식:

list[str]

async close()

치지직과 연결을 종료합니다.

property is_closed: bool

치지직 연결을 종료한 유/무를 불러옵니다.

async live_detail(channel_id: str) LiveDetail | None

채널의 실시간 방송 정보(live detail)를 불러오는 함수입니다.

매개변수:

channel_id (str) – 채널의 ID 값입니다.

반환:

자세한 정보가 담긴 실시간 방송(LiveDetail)를 불러옵니다.스트리머가 오랫동안 방송하지 않으면 `None`을 응답받을 수 있습니다.

반환 형식:

Optional[LiveDetail]

async live_status(channel_id: str) LiveStatus | None

채널의 실시간 방송 상태(live status)를 불러옵니다.

매개변수:

channel_id (str) – 채널의 ID 값입니다.

반환:

실시간 방송 상태(LiveStatus)를 불러옵니다.스트리머가 오랫동안 방송하지 않으면 `None`을 응답받을 수 있습니다.

반환 형식:

Optional[LiveStatus]

login(authorization_key: str, session_key: str)

네이버 로그인을 합니다. 일부 기능을 이용하려면 로그인이 필요합니다.

매개변수:
  • authorization_key (str) – HTTP 전송되는 쿠키 중의 NID_AUT 값을 의미합니다.

  • session_key (str) – HTTP 전송되는 쿠키 중의 NID_SES 값을 의미합니다.

manage(channel_id: str | None = None) ManageClient

방송 관리 기능을 제공하는 클라이언트를 불러옵니다.

매개변수:

channel_id (Optional[str]) – 방송 관리 기능을 사용할 채널의 ID 입니다. 기본 값은 마지막으로 사용한 채널의 ID입니다.만약에 마지막으로 사용한 채널이 없다면, TypeError 예외를 발생시킵니다.

반환:

방송 관리 기능을 제공하는 클라이언트를 반환받습니다.

반환 형식:

ManageClient

async search_channel(keyword: str) list[Channel]

키워드를 이용하여 채널을 검색합니다.

매개변수:

keyword (str) – 검색할 채널 입니다.

반환:

검색된 채널을 반환받습니다.

반환 형식:

list[Channel]

async search_live(keyword: str) list[Live]

키워드를 이용하여 실시간 방송을 검색합니다.

매개변수:

keyword (str) – 검색할 실시간 방송입니다.

반환:

검색된 실시간 방송 정보를 반환받습니다.

반환 형식:

list[Video]

async search_video(keyword: str) list[Video]

키워드를 이용하여 영상을 검색합니다.

매개변수:

keyword (str) – 검색할 영상입니다.

반환:

검색된 영상 정보를 반환받습니다.

반환 형식:

list[Video]

async user() User

내 정보를 불러옵니다. 이 기능을 사용하려면 로그인이 필요합니다.

반환:

로그인된 나의 정보입니다.

반환 형식:

User

Enumerations

class UserRole
channel_manager = 'streaming_channel_manager'
chat_manager = 'streaming_chat_manager'
common_user = 'common_user'
manager = 'manager'
settlement_manager = 'streaming_settlement_manager'
streamer = 'streamer'

Channel

class PartialChannel
id: str
image: str | None
name: str
personal_data: ChannelPersonalData | None
verified_mark: bool
class Channel

기반 클래스: PartialChannel

description: str
follower: int
open_live: bool
class ChannelPersonalData
private_user_block: bool

User

class PartialUser
async add_restrict()

사용자가 채널에서 활동을 하지못하도록, 활동제한 명단에 등록합니다.

async add_role(role: UserRole)

사용자에게 방송 관리 권한을 부여합니다.

매개변수:

role (UserRole) – 사용자에게 부여할 권한입니다. 방송 권한은 UserRole.chat_manager, UserRole.settlement_manager, 또는 UserRole.channel_manager`만 있습니다. 다른 권한을 인수로 넣었을 경우에는, :exc:`TypeError 예외를 초래할 수 있습니다.

async chat_activity_count() ChatActivityCount

사용자의 활동기록이 담긴 정보를 불러옵니다.

반환:

사용자의 활동기록이 담긴 Chat Activity Count 객체를 반환받습니다. 객체에는 사용자가 임시차단을 당한 횟수, 활동제한을 당한 횟수와 지금까지 입력한 채팅의 개수를포함하고 있습니다.

반환 형식:

ChatActivityCount

nickname: str | None
profile_image_url: str | None
async remove_restrict()

사용자가 다시 활동할 수 있도록, 활동제한 명단에서 제거합니다.

async remove_role()

사용자에게 부여된 관리 권한을 제거합니다.

user_id_hash: str | None
verified_mark: bool
class User
has_profile: bool
logged_in: bool | None
official_noti_agree: bool
official_noti_agree_updated_date: Annotated[datetime.datetime | None, BeforeValidator(ChzzkModel.special_date_parsing_validator)]
penalties: list[Any] | None

Video

class PartialVideo
duration: int
id: str | None
number: int
publish_date: Annotated[datetime | None, BeforeValidator(func=special_date_parsing_validator)]
thumbnail_image_url: str | None
title: str
type: str
class Video
adult: bool
category_type: str | None
channel: PartialChannel | None
channel_id: str
read_count: int
video_category: str | None
video_category_value: str

Exceptions

exception LoginRequired

이 기능을 이용하기 위해서는 로그인이 필요합니다. Client.login 함수를 이용하여 로그인해주세요.

exception HTTPException

치지직 호출 중에 HTTP 예외가 발생하였습니다.

exception NotFound

조회된 결과가 없습니다.