Twitter에서 스트림을 다운로드하기 위해 간단한 bash 스크립트를 작성 중입니다.
curl -H "Authorization: ${TOKEN}" "$URL"
필요한 입력 $TOKEN
(CONSUMER_KEY, ...)이 모두 있지만 oauth_sign
입력 데이터에서 토큰을 생성하는 프로그램을 어디서 구할 수 있습니까?
TOKEN=$(oauth_sign $CONSUMER_KEY $CONSUMER_SECRET $ACCESS_TOKEN $ACCESS_SECRET GET $URL)
답변1
방금 @goldilocks에서 제공한 링크를 다운로드했습니다.http://acme.com/software/oauth_sign/을 클릭하고 컴파일되는지 확인하세요. 간단한 것 같습니다.
엮다
$ make
gcc -c -Wall -O liboauthsign.c
liboauthsign.c: In function ‘oauth_sign’:
liboauthsign.c:123:5: warning: implicit declaration of function ‘getpid’
liboauthsign.c:305:5: warning: pointer targets in passing argument 4 of ‘HMAC’ differ in signedness
/usr/include/openssl/hmac.h:99:16: note: expected ‘const unsigned char *’ but argument is of type ‘char *’
rm -f liboauthsign.a
ar rc liboauthsign.a liboauthsign.o
ranlib liboauthsign.a
gcc -Wall -O oauth_sign.c -L. -loauthsign -lcrypto -o oauth_sign
용법
$ ./oauth_sign --help
usage: oauth_sign [-q] consumer_key consumer_key_secret token token_secret method url [name=value ...]
Readme 파일에서 발췌
이를 사용하려면 요청 방법 및 URL과 함께 4개의 암호화된 쿠키를 제공해야 합니다. 추가 매개변수가 있는 POST 요청인 경우 이러한 매개변수도 제공해야 합니다. Oauth_sign은 이 모든 것을 하나로 모아 서명 문자열을 형성합니다. 서명은 RFC 섹션 3.4.2에 지정된 HMAC-SHA1을 사용하여 생성되고 RFC 섹션 3.5.1에 지정된 Authorization 헤더 값으로 반환됩니다. 그러면 이 헤더는 http_get(1) 및 http_post(1)의 -h 플래그 또는 컬(1)의 -H 플래그를 통해 HTTP 요청에 사용될 수 있습니다.
자신의 C 애플리케이션에서 사용할 수 있는 함수를 노출하는 라이브러리와 함께 제공되는 것 같습니다.
답변2
Twitter 사용자로부터 스트림 소스 가져오기bash 명령을 사용하여 Twitter에서 스트림을 엽니다. (commandlinefu.com에서)
1단계 - 4개의 oauth 키 생성Twitter 스트림 피드에 필요합니다.
2단계 - 서명 기본 문자열 생성Twitter 스트림 피드에 필요합니다.
3단계 - oauth 토큰 생성Twitter 스트림 피드에 필요합니다.
4단계 - 인증 헤더 생성Twitter 스트림 피드에 필요합니다.