Ruby를 사용하여 Twitter 애플리케이션을 작성하는 방법을 배우고 싶습니까? 그렇다면 당신은 올바른 위치에 있습니다!
이 게시물에서는 Twitter API와 상호 작용하고 특정 키워드를 찾거나 자동 답장을 보내는 등의 작업을 수행할 수 있는 프로그램을 만드는 방법을 단계별로 알려 드리겠습니다.
시작하겠습니다!
설정
먼저 twitter
를 설치해야 합니다. 보석. 이 단계는 매우 간단합니다.
gem install twitter
그런 다음 https://apps.twitter.com/으로 이동하여 새 애플리케이션을 설정해야 합니다. 그러려면 오른쪽에 있는 '새 앱 만들기' 버튼을 클릭해야 합니다.
그런 다음 양식을 작성하십시오. 지금 입력하는 데이터는 중요하지 않습니다. 이 예에서 수행한 작업은 다음과 같습니다.
<블록 인용>
웹사이트 필드에 대해 걱정하지 마십시오. https://example.com을 자리 표시자로 사용할 수 있습니다.
그런 다음 '예, 동의합니다'를 선택하여 Twitter 약관에 동의하고 'Twitter 응용 프로그램 만들기'를 클릭합니다.
모든 것이 올바르게 진행되면 다음 화면이 표시되어야 합니다.
이제 '키 및 액세스 토큰'을 클릭해야 합니다. 이 페이지에는 이 설정 프로세스의 목적이었던 Twitter API에 연결하는 데 필요한 API 키가 있습니다.
다음 단계는 이 템플릿에 세부 정보를 채우는 것입니다.
require 'twitter' client = Twitter::REST::Client.new do |config| config.consumer_key = "YOUR_CONSUMER_KEY" config.consumer_secret = "YOUR_CONSUMER_SECRET" config.access_token = "YOUR_ACCESS_TOKEN" config.access_token_secret = "YOUR_ACCESS_SECRET" end<블록 인용>
마지막 두 값을 얻으려면 '액세스 토큰 생성' 버튼을 클릭해야 합니다.
이 설정 프로세스를 완료하면 API 작업을 시작할 준비가 된 것입니다.
트윗 작업
이제 client
를 통해 전체 Twitter API에 액세스할 수 있습니다. 물체. 예를 들어 다음과 같이 하고 싶습니다. @rubyinside
에서 마지막 20개의 트윗을 다운로드합니다. 계정을 만들고 나중에 분석할 수 있도록 YAML 파일에 저장합니다.
Twitter 사용자의 타임라인을 가져오려면 user_timeline
을 사용할 수 있습니다. 방법.
예 :
tweets = client.user_timeline('rubyinside', count: 20)
이 메서드는 상호 작용할 수 있는 Tweet 개체의 배열을 반환하지만 어떻게 할 수 있습니까?
문서를 검색할 수 있지만 더 재미있는 것은 pry
를 사용하는 것입니다. . pry
내부에서 코드를 실행하면 ls Twitter::Tweet
를 사용할 수 있습니다. 명령. 이 명령은 특정 개체 또는 클래스에 대한 모든 메서드를 나열합니다.
이 경우:
이제 full_text
우리가 사용할 수 있는 방법을 사용하여 트윗 내용을 인쇄할 수 있도록 합시다.
tweets.each { |tweet| puts tweet.full_text }
재미를 위해 다른 방법을 시도해 볼 수도 있습니다. 🙂
트윗 저장
이 모든 트윗으로 무엇을 합니까? 예를 들어 나중에 분석하기 위해 파일에 쓸 수 있습니다. 이를 수행하는 쉬운 방법은 YAML 형식을 사용하는 것입니다.
require 'yaml' # ... rest of the code here ... File.write('tweets.yml', YAML.dump(tweets))
그런 다음 YAML.load_file
을 사용하여 이 트윗을 로드할 수 있습니다. 방법.
require 'yaml' require 'twitter' tweets = YAML.load_file('tweets.yml')
트윗은 방금 다시 요청한 것처럼 원래 형식으로 사용할 수 있습니다. 멋지지 않아? 🙂
트윗 보내기
당신이 할 수 있는 다른 많은 것들이 있습니다. 예를 들어 특정 키워드를 언급한 사용자에게 메시지를 보내는 것은 어떻습니까?
새 트윗을 보내려면 update
를 사용할 수 있습니다. 방법.
client.update("I'm having some fun with the Twitter gem!")
따라서 다음과 같이 할 수 있습니다.
client.search('#ruby').take(3).each do |tweet| client.update("@#{tweet.user} Hey I love Ruby too, what are your favorite blogs? :)") end
또 다른 옵션은 스트리밍 API를 사용하여 발생하는 '라이브' 이벤트를 제공하는 것입니다. 문서에서 이에 대한 자세한 정보를 찾을 수 있습니다.
결론
Twitter gem을 사용하면 초기 설정 후 Twitter API 작업을 정말 쉽게 할 수 있습니다. 이제 여러분이 시도해 보고 재미있는 것을 만들 차례입니다!
이런 글을 계속 쓸 수 있도록 이 글을 공유하는 것 잊지 마세요 🙂