Stream

class tweepy.Stream(consumer_key, consumer_secret, access_token, access_token_secret, chunk_size=512, daemon=False, max_retries=inf, proxy=None, verify=True)

Filter and sample realtime Tweets with Twitter API v1.1

참고

New Twitter Developer Apps created on or after April 29, 2022 will not be able to gain access to v1.1 statuses/sample and v1.1 statuses/filter, the Twitter API v1.1 endpoints that Stream uses. Twitter API v2 can be used instead with StreamingClient.

매개변수
  • consumer_key (str) – 트위터 API의 Consumer Key.

  • consumer_secret (str) – 트위터 API의 Consumer Secret.

  • access_token (str) – 트위터 API의 Access Token.

  • access_token_secret (str) – 트위터 API의 Access Token Secret.

  • chunk_size (int) – socket.read의 기본 크기. 트윗을 최소한의 지연시간으로 읽을 수 있도록, 트윗 크기의 절반도 채 되지 않는 512로 기본 설정되어 있습니다. 이 값을 1Kb 또는 그 이상으로 설정하면, 더 많은 데이터가 도착할 때까지 대기하므로 대기 시간은 증가하지만, 소켓의 읽기 호출은 적게 수행할 수도 있습니다.

  • daemon (bool) – 스트림을 실행하는 데 스레드를 사용할 경우, 데몬 스레드를 사용할지의 여부.

  • max_retries (int) – 스트림에 재연결을 시도할 최대 횟수

  • proxy (str | None) – 스트림에 연결할 때 사용할 프록시의 URL

  • verify (bool | str) – Boolean형으로 사용할 때는, 서버의 TLS 인증서를 확인할지의 여부를 설정할 수 있습니다. 문자열형으로 사용할 때는, 사용할 CA 번들의 경로를 입력해야 합니다.

running

현재 실행 중인 스트림이 있는지의 여부

형식

bool

session

스트림에 연결하는 데 사용했던 세션 요청(Requests Session)

형식

requests.Session

thread

스트림을 실행하는 데 사용했던 스레드

형식

threading.Thread | None

user_agent

스트림에 연결하는 데 사용했던 사용자 에이전트(user_agent)

형식

str

filter(*, follow=None, track=None, locations=None, filter_level=None, languages=None, stall_warnings=False, threaded=False)

실시간 트윗 필터링

매개변수
  • follow (list[int | str] | None) – 스트림으로부터 트윗들(statuses)을 반환받을 특정 사용자를 지정하는 사용자 ID값.

  • track (list[str] | None) – 추적할(Track) 키워드.

  • locations (list[float] | None) – 추적할(Track) 위치를 지정하는 경계 상자(Bounding box)의 집합 지정.

  • filter_level (str | None) – 이 매개변수를 none, low 또는 medium 중 하나로 설정하면 스트림에 포함해야 하는 트윗 속성 중 filter_level 속성의 최솟값을 정합니다. 기본값은 none이며, 이는 모든 사용 가능한 트윗을 스트림에 포함합니다. 스트림의 트윗을 엔드유저(예: 프레젠테이션, 컨퍼런스의 대시보드 또는 라이브 피드)에게 트윗 스트림을 표시해야 할 때는, 이 값을 medium으로 설정하는 것을 권장합니다.

  • languages (list[str] | None) – 이 매개변수를 BCP 47 언어 식별자꼴로 표현되는, 쉼표(,)로 구분된 리스트로 설정하면(단, 트위터의 고급 검색 페이지에 있는 언어에 한함) 지정한 언어로 작성된 트윗만 반환합니다. 예로, language=ko 로 설정하면 한국어로 작성된 트윗만 스트림에 포함됩니다.

  • stall_warnings (bool) – 지연 경고(Stall warnings)를 전달할지의 여부

  • threaded (bool) – 스레드를 실행하기 위해 스레드를 사용할지의 여부

예외 발생

TweepyException – When the stream is already connected or when the number of location coordinates is not a multiple of 4

반환값

threadedTrue 로 설정된 경우 스레드, 아닌 경우 None

반환 형식

threading.Thread | None

참조

https://developer.twitter.com/en/docs/twitter-api/v1/tweets/filter-realtime/api-reference/post-statuses-filter

sample(*, languages=None, stall_warnings=False, threaded=False)

실시간 트윗 샘플링

매개변수
  • languages (list[str] | None) – 이 매개변수를 BCP 47 언어 식별자꼴로 표현되는, 쉼표(,)로 구분된 리스트로 설정하면(단, 트위터의 고급 검색 페이지에 있는 언어에 한함) 지정한 언어로 작성된 트윗만 반환합니다. 예로, language=ko 로 설정하면 한국어로 작성된 트윗만 스트림에 포함됩니다.

  • stall_warnings (bool) – 지연 경고(Stall warnings)를 전달할지의 여부

  • threaded (bool) – 스레드를 실행하기 위해 스레드를 사용할지의 여부

예외 발생

TweepyException – When the stream is already connected

반환값

threadedTrue 로 설정된 경우 스레드, 아닌 경우 None

반환 형식

threading.Thread | None

참조

https://developer.twitter.com/en/docs/twitter-api/v1/tweets/sample-realtime/api-reference/get-statuses-sample

on_data(raw_data)

스트림에서 원본 데이터(Raw data)가 수신되면 호출됩니다. 이 메서드는 메세지 유형에 따라 다른 메서드로 데이터를 전달합니다.

매개변수

raw_data (JSON) – 스트림으로부터의 원본 데이터(Raw data)

참조

《》https://developer.twitter.com/en/docs/twitter-api/v1/tweets/filter-realtime/guides/streaming-message-types

on_status(status)

트윗(Status)을 받아오면 호출됨.

매개변수

status (Status) – 받아온 트윗(Status)

on_delete(status_id, user_id)

트윗(Status) 삭제를 전달받으면 호출됨.

매개변수
  • status_id (int) – 삭제된 트윗의 ID.

  • user_id (int) – 트윗 작성자의 ID.

on_disconnect_message(message)

연결 종료 메세지를 받으면 호출됨.

매개변수

message (JSON) – 연결 종료 메세지

on_limit(track)

API 호출 제한을 전달받으면 호출됨.

매개변수

track (int) – 연결 수립 후 전달되지 않은 트윗의 총 개수

on_scrub_geo(notice)

특정 위치의 삭제를 전달받으면 호출됨.

매개변수

notice (JSON) – 특정 위치 삭제 통지

on_status_withheld(notice)

트윗(Status) 내용 보류를 전달받으면 호출됨.

매개변수

notice (JSON) – 내용 보류 통지 대상 트윗(Status)

on_user_withheld(notice)

사용자가 보류된 내용(의 통지)를 전달받았을때 호출됨.

매개변수

notice (JSON) – 내용 보류 통지를 받은 사용자

on_warning(warning)

지연 경고(Stall warnings)를 전달받으면 호출됨.

매개변수

warning (JSON) – 지연 경고(Stall warnings)

disconnect()

스트림 연결 끊기

on_closed(response)

트위터에 의해 스트림이 닫힐 경우 호출됨.

매개변수

response (requests.Response) – 트위터로부터의 응답

on_connect()

스트리밍 API에 성공적으로 연결되면 호출됨.

on_connection_error()

스트림 연결 오류 및 시간 초과시 호출됨.

on_disconnect()

스트림 연결이 종료되면 호출됨.

on_exception(exception)

처리되지 않은 예외가 발생하면 호출됨.

매개변수

exception (Exception) – 처리되지 않은 예외

on_keep_alive()

keep-alive 신호를 받을 때 호출됨.

on_request_error(status_code)

HTTP 200이 아닌 상태 코드가 반환되면 호출됨.

매개변수

status_code (int) – 발생한 HTTP 상태 코드