Twitter API v2를 사용하여 트윗에 대한 전체 대화 이해

Twitter API를 사용하면 개발자와 연구원이 Twitter 데이터를 프로그래밍 방식으로 가져올 수 있습니다. 주제에 대한 대화를 연구하는 데 관심이 있는 연구원은 종종 주제에 대한 트윗을 얻기 위해 를 사용합니다. 에서 반환된 각 트윗에는 답글과 이를 인용하는 트윗에서 발생하는 중요한 후속 대화가 있을 수 있으며, 전체 대화를 더 잘 이해하기 위한 추가 정보를 제공할 수 있습니다. 이 튜토리얼에서는 전체 대화를 트윗으로 가져오는 방법을 배웁니다.

1단계: 주제에 대한 트윗 검색



첫 번째 단계에서 를 사용하여 특정 키워드를 포함하고 특정 기준을 충족하는 주제에 대한 트윗을 검색할 수 있습니다. 현재 Twitter API v2에는 다음 두 가지가 있습니다.

  • , 모든 개발자가 사용할 수 있으며 지난 7일 동안의 트윗을 제공합니다
  • .

  • , 현재 학술 연구원만 사용할 수 있으며 공개 트윗의 전체 아카이브에서 트윗을 제공합니다
  • .

    검색 엔드포인트는 특정 기준을 충족하는 트윗을 반환하기 위해 개발자가 검색 쿼리를 지정하도록 요구합니다. 선택적으로 트윗을 원하는 기간을 지정할 수 있습니다.

    기본적으로 요청당 10개의 트윗(트윗 ID 및 트윗 텍스트)을 받습니다. 요청당 max_results 매개변수를 사용하여 최대 다음을 얻을 수 있습니다.
  • 및 끝점에 대한 트윗 100개
  • 500 트윗

  • 추가 트윗을 원하면 를 사용할 수 있습니다.

    다음은 Python에서 Tweepy package을 사용하여 에서 트윗을 검색하는 예입니다.

    참고: 먼저 sign up for a developer account이 필요하고 아래 코드 샘플에서 사용할 전달자 토큰이 있어야 합니다. 무기명 토큰을 얻으려면 의 단계를 따르십시오. 또한 아래 코드 샘플을 실행하려면 Python에 Tweepy 패키지를 설치해야 합니다. 지침에 따라 Tweepy를 설치합니다.

    import tweepy
    
    client = tweepy.Client(bearer_token='REPLACE_ME')
    
    # Replace with your own search query
    query = 'from:TwitterDev -is:retweet'
    
    # Replace the limit=1000 with the maximum number of Tweets you want
    for tweet in tweepy.Paginator(client.search_recent_tweets, query=query,
                                  tweet_fields=['context_annotations', 'created_at'], max_results=100).flatten(limit=1000):
        print(tweet.id)
    
    


    선택한 주제에 대한 트윗이 있으면 각 트윗에 대해 모든 답글을 받을 수 있습니다.

    2단계: 트윗의 경우 모든 답글 받기



    검색 엔드포인트에서 사용할 수 있는 conversation_id 매개변수를 사용하여 트윗에 대한 모든 답글을 얻을 수 있습니다. 이 conversation_id의 값은 원래 트윗의 트윗 ID입니다. 아래 예는 ID가 1503863303709286407인 트윗에 대한 모든 답글을 받는 방법을 보여줍니다.

    import tweepy
    
    client = tweepy.Client(bearer_token='REPLACE_ME')
    
    # Replace with your own search query
    query = 'conversation_id:1503863303709286407 -is:retweet'
    
    # Replace the limit=1000 with the maximum number of Tweets you want
    for tweet in tweepy.Paginator(client.search_recent_tweets, query=query,
                                  tweet_fields=['context_annotations', 'created_at'], max_results=100).flatten(limit=1000):
        print(tweet.id)
    
    


    3단계: 트윗의 경우 인용 트윗을 모두 가져옵니다.



    트윗에 대한 인용 트윗을 얻으려면 를 사용할 수 있습니다. 트윗 ID를 전달하고 제외 매개변수를 리트윗으로 설정할 수 있습니다. 이렇게 하면 트윗의 모든 원본 인용 트윗이 제공됩니다. 아래 예는 ID가 1503863303709286407인 트윗에 대한 모든 인용 트윗을 가져오는 방법을 보여줍니다.

    import tweepy
    
    client = tweepy.Client(bearer_token='REPLACE_ME')
    
    # Replace the limit=1000 with the maximum number of Tweets you want
    for tweet in tweepy.Paginator(client.get_quote_tweets, id=1503863303709286407, max_results=100,
                                  exclude='retweets').flatten(limit=1000):
        print(tweet.id)
    
    


    그게 다야. 이제 모든 답글과 인용 트윗을 포함하여 트윗에 대한 전체 대화가 있습니다. 및 견적 트윗 조회 끝점을 사용하면 개발자와 연구원이 트윗에 대한 전체 대화를 쉽게 이해할 수 있습니다. 이 자습서에 대한 질문이나 피드백이 있으면 에서 저에게 연락하십시오.

    자원




  • Tweepy Documentation
  • 좋은 웹페이지 즐겨찾기