2017-10-12 5 views
0

저는 Linq2Twitter를 사용하고 있으며 모든 공개 트윗과 내가 팔로우하는 누군가의 보호받는 트윗에서 특정 해시 태그가있는 모든 트윗을 얻고 싶습니다. 내 고객 키, 비밀, 액세스 토큰 및 액세스 토큰 비밀을 사용하여 SingleUserAuthorizer를 사용하여 연결을 설정했습니다. 나는 공개 트윗을 얻을 수 있지만, 내가 따르는 사람들로부터 보호 된 트윗을 되돌릴 수는 없다.Linq2Twitter 님이 보호 된 트윗을 가지고 있지 않습니다.

다음 설정을 루프에 추가하여 결과를 계속 가져올 수 있습니다. 공개 테스트 계정을 포함하여 공개 트윗을 많이 받았지만 보호 된 테스트 계정에서 아무 것도 얻지 못했습니다.

search = await (twitterCtx.Search.Where(srch => srch.Type == SearchType.Search 
                   && srch.Count == 100 
                   && srch.Query == "#myHastTag" 
                   && srch.MaxID == minID 
                   && srch.ResultType == ResultType.Recent 
                  ) 
                .Select(srch => srch)) 
                .SingleOrDefaultAsync(); 

나는 검색을 수행 할 때 (srch.MaxID 사용)을 통해 반복하고 더 많은 결과를 얻는 시도,하지만 난 결과 내 트윗을 찾을 수 없습니다.

나는 동일한 인증을 사용하지만 난 다시 응답을받을 수 있나요 후 보호 된 트윗을 가지고 내 사용자를 검색 할 경우 검색 결과를 검색 할 때 나는 트윗을 보호받을 수있는 방법

search = await (twitterCtx.Status.Where(t => t.Type == StatusType.User 
                   && t.UserID == myTwitterUserID 
                  ) 
                .Select(t => t)) 
                .ToListAsync(); 

이 포함되어야한다?

+0

개인 트윗은 무엇을 의미합니까? DMs? –

+0

@JoeMayo - 죄송합니다. 개인적으로 보호하지 말았어야합니다. 트위터에서 설정을하고 "내 트윗을 보호"한 사람. 나는 모든 사용자들로부터 보호 된 트윗을 기대하지는 않는다. 단지 나를 따르도록 허용 한 사람들이다. – Greg

답변

0

방금 ​​읽은 것 https://support.twitter.com/articles/14016 - 사용자가 내 앱을 승인하지 않으면 추측 할 수 있습니다. 계정이 보호되면 내 트윗을 얻을 수 없습니다.

해결 방법 : 지금까지 내가 가장 생각해 본 것은 사용자의 홈 타임 라인을 쿼리 한 다음 해시 태그로 필터링하는 것입니다. 공개 목록의 목록과 그 목록을 섞은 경우 모두 포함시켜야합니다.

using (var twitterCtx = new TwitterContext(auth)) 
      { 
       var tweets = 
       await 
       (from tweet in twitterCtx.Status 
       where tweet.Type == StatusType.Home 
       && tweet.TweetMode == TweetMode.Extended 
       select tweet) 
       .ToListAsync(); 

       var filteredTweets = tweets.Where(t => t.Entities.HashTagEntities.Any(h => h.Tag == "GregsTestWall")); 

      } 
+0

확실히 타사 앱이 부족한 이유의 일부를 설명합니다. – krillgar