R에서 페이스북 페이지의 포스트를 크롤링 하는 예제입니다.
이런 저렁 방법을 많이 찾아보고 시도 하였으나 본인 것이 아닌 타인의 타임라인에 있는 포스트들을 크롤링 하는 (공개된) 방법은 없더군요.
단, 개인 타임라인이 아닌 공개 "페이지"는 가능합니다.
#필요 패키지 install.packages("Rfacebook") library(Rfacebook) #페이스북 앱id 정보와 secret 값 입 fbAuth = fbOAuth(app_id = "facebook_app_id", app_secret = "facebook_app_secret", extended_permissions = FALSE) start_date = '2016/12/01' end_date = '2017/01/30' scrape_days=seq(from = as.Date(start_date), to = as.Date(end_date), by = 'days') #공인 페이지s stars <- c("iu.loen", "OfficialLeeMinho", "barackobama") posts <- c() #공인 페이지로부터 페이지 정보 얻기 for (i in 1:length(stars)) { for(scrape_day in scrape_days) { tryCatch( { daypost=getPage(page = stars[i], token = fbAuth, since = as.Date(scrape_day, origin = "1970-01-01"), until = as.Date(scrape_day, origin = "1970-01-01") + 1) posts = rbind(posts, daypost) }, error = function(e){} ) } } View(posts)
댓글 6
-
허은종
2017.05.30 15:57
안녕하세요! 포스팅을 보고 r을 공부하고 있는 학생입니다. 해당 코드를 통해서 실행한 결과 posts 페이지 결과값에서 No data available in table 이 나오는데 어떤 경우인지 알 수 있을까요?^^ 좋은 글 감사합니다. -
안녕하세요? 혹시, 소스코드를 전혀 수정하지 않은 상태로 실행을 해 보셨다면, app_id 혹은, app_secret 의 값을 제대로 반영하였는지 확인을 부탁드립니다. 페이스북으로 부터 이 두 값을 얻는 방법은 아래 경로에 나와 있습니다^^
http://www.bloggingshiksha.com/how-to-get-app_id-and-app_secret-key-for-facebook-applications/
즉, 상기 주소를 참조하여 두 값을 얻어 아래의 "facebook_app_id" 와 "facebook_app_secret"의 값을 수정해 주셔야 합니다.
app_id = "facebook_app_id",
app_secret = "facebook_app_secret"
감사합니다! -
문문문
2019.01.11 18:54
app_id와 app_secret도 제가 페이스북에서 받은 걸로 했는데 No data available in table이 나오는데 어떤 것이 문제일까요? -
아무래도 해당 라이브러리가 이제 페북의 최근 API를 지원하지 않을수도 있다는 생각을 하고 있습니다. 어디까지나 심증입니다. 더 자세한건 확인을 해봐야 할 듯 하네요ㅋ
-
KUK
2019.04.03 13:02
안녕하세요!! 이대로 했는데 마지막에 View(posts)에서 'x' 인자가 잘못되었습니다. 라는 메세지가 뜨는데 어떤 문제인가요? ㅠㅠ
-
안녕하세요~ 아무래도 이 글에서 사용한 라이브러리가 동작을 안 하고 있는 것 같습니다. 이에, 최신정보로 조만간 업데이트를 해 놓도록 하겠습니다^^;
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
공지 | [TIP] PYTHON 에서 "UnicodeDecodeError: 'cp949' codec can't decode byte 0xe2 in position 6987: illegal multibyte sequence" 오류 날때... [48] | 파이팅건맨 | 2016.02.20 | 105238 |
» | [TIP] R에서 페이스북 페이지 정보 크롤링 하기 [6] | 파이팅건맨 | 2017.02.11 | 15143 |
공지 | [TIP] TensorFlow를 윈도우에서 사용하기 (A way to use TensorFlow on Windows) [3] | 파이팅건맨 | 2016.04.16 | 14588 |
6 | [TIP] Android에서 MS의 Face Rest API사용하기 (How to use the MS Face API on Android) | 파이팅건맨 | 2019.07.16 | 532 |
5 | [TIP] 아두이노에서 두근두근 Open API 호출하기 | 파이팅건맨 | 2019.06.04 | 1614 |
4 | [TIP] Ajax에서 AWS Lambda Rest API CALL 하기 (How to call AWS Lambda API from Ajax) | 파이팅건맨 | 2018.02.12 | 903 |
3 | [TIP] 각종 OAuth 로그인 예제 [6] | 파이팅건맨 | 2018.01.30 | 1136 |
2 | [TIP] 파이선에서 AWS Lambda로 만든 Restful API 호출하기 (How to call AWS Lambda Restful API from Python) | 파이팅건맨 | 2018.01.23 | 668 |
1 | [TIP] 아두이노에서 AWS Lambda로 제작한 Restful API 호출하기 (The way how to call AWS Lambda Restful API from Arduino) | 파이팅건맨 | 2018.01.18 | 855 |