2013-12-15 1 views
0

Twitter REST API 문서를 읽었습니다. 한 번에 최대 200 개까지 가져올 수 있다고합니다.하지만 ... 할 수는 없습니다. 마지막 짹짹을 max_id로 사용하고 다른 요청을 보내면 200을 당기 겠지만 첫 번째 요청에서 마지막 짹짹만 받아 들일 것입니다. 800의 한계에서 나머지는 아닙니다.트위터에 몇 개의 직접 메시지가 저장됩니까?

약간의 조사를했는데 다른 계정에서 더 많은 직접 메시지를 보냈을 때 다른 직접 메시지가 사라졌습니다 (예 : "sup"라는 계정에서받은 메시지가 200 개인 경우, "foo", "sup"계정의 5 개의 메시지는 195 개의 직접 메시지 만 표시하고 "foo"는 5를 표시합니다.이 5 개의 메시지는 트위터 DM 창과 API 호출에서 "sup"

Twython을 사용하여이 작업을 수행하고 있지만 채팅 로그에서 메시지가 사라지는 것을 볼 수 있으므로 요청을 다시 전환하면 아무 것도 바뀌지 않을 것이라고 생각합니다. 총 DM은 없습니까? 아니면 완전히 잘못된 것을하고 있습니까?

이것은 직접 메시지를 가져 오기 위해 사용했던 코드입니다. DM이 트위터 DM 콘솔에서 사라지는 것을 설명하는 방법을 아직도 모르겠다는 것을 명심하십시오.

test_m = twitter.get_direct_messages(count=200) 
    i = 0 
    for x in test_m: 
     print 'dm number = ' + str(i) + '| dm id= '+ str(x['id']) + ' |text= ' + x['text'] 
     i += 1 

m_id = test_m[-1]['id'] 
test_m_2 = twitter.get_direct_messages(count=200, max_id=m_id) 

test_m이 코드의 마지막 요소를 포함하는, 항목 1의 어레이 (200 개)와 같은 품목의 배열 및 test_m_2 test_m로 리턴한다.

편집 : 글쎄, 아직 응답이 없지만이 메소드가 다른 API 호출 (사용자 타임 라인, 타임 라인, retweets 포함)에 대해 200 개 이상의 메시지를 성공적으로 반환한다고 추가해야한다고 생각했습니다. 내 테스트에서 나는 단지 200 개의 수신 메시지가 모든 DM 상호 작용을 통해 트위터에 저장된다고 가정해야합니다. 내가 틀렸다면 알려주세요! 당신이 destroy_direct_message를 사용하여 직접 메시지 중 하나를 삭제한다면

답변

2

브라이언,

Twitter에 저장 더 지난 200 메시지보다, 당신은 1 개 추가 된 직접 메시지에 액세스 할 수 있습니다.

100 오래된 직접 메시지를 삭제하면 추가로 100 개의 메시지 등

나도 max_id도 페이지 작업을하지 않습니다 둘을 액세스 할 수 있습니다. Twython이나 트위터 ;-(

1

현재

JJ의 버그는, API가 (당신이 계정의 최신 3200 짹짹까지 얻을 수 있지만 200 최신 직접 메시지를받은 서 있는지 확실하지 않습니다 대화에서 direct_messages 엔드 포인트) 또는 800 최신 은 귀하의 질문에, 내가 트위터에서 "저장"직접 메시지의 수의 제한이 있다고 생각하지 않습니다에 대답하기 위해 직접 메시지 (direct_messages/sent 엔드 포인트).

을 보냈다. 최근 , 나는 1 개 이상의 대화로 전체 대화를 검색 할 수 있었다. 이 목적으로 만든 tool을 사용하여 7000 개의 직접 메시지 (및 모든 업로드 된 미디어)를 다운로드 할 수 있습니다.

관련 문제