티스토리 뷰

반응형

안녕하세요 제이씨입니다~

 

요즘 코로나 때문에 밖에도 못 나가고 집에서 대부분에 시간을 보내던 중 얼마 전 친구들과 대화에서 만들어 보고 싶은 프로그램 아이디어가 떠올랐습니다. A 친구가 B 친구에게 "너 아직도 나 인스타 팔로우 안했냐?" 이러면서 짜증을 내더라고요 ㅎㅎ 이 대화를 듣고 인스타 하는 사람들은 팔로우에 민감하구나... 하고 그 사람들을 위해 내가 팔로우하는 사람 중 나를 팔로우하지 않는 사람을 찾아주는 프로그램을 만들기로 했습니다.

동적 웹사이트를 다루기에는 역시 selenium이 제일 편하여 selenium을 사용해서 만들었습니다. 작동 순서는 다음과 같습니다.

  1. 인스타 그램 접속
  2. 인스타 그램 로그인
  3. 팔로잉 팔로우 비교할 ID 입력
  4. 입력된 ID 피드 접속
  5. 팔로잉, 팔로우 목록 추출
  6. 팔로잉 목록 중 팔로우에 없는 ID추출

위 순서로 프로그램이 진행됩니다.

 

로그인을 마치고 피드에 들어가면 다음 목록을 볼 수 있습니다.

추출 할 데이터
추출 할 데이터

여기서 팔로우 241 명 ID를 추출한 후 팔로워 275명 ID에 하나씩 대입해서 같은 값이 있는지 찾아봅니다. 만약 제가 팔로우하는 사람이 저를 팔로우하지 않았다면 그 아이디를 추출합니다. 이 과정은 팔로워, 팔로우의 class 값을 find_element_by_class_name를 이용하여 찾습니다. 그 후 팔로워, 팔로우 ID 값을 pandas series에 df1, df2로 저장하고 df1과 df2를 비교하였습니다.

 

이 작업을 하던 중 팔로워 목록이 스크롤을 다 내려주지 않으면 HTML에 뜨지 않기 때문에 스크롤하는 과정을 추가해 줬습니다. 이 작업으로 인해 좀 오래 걸리네요...

팔로잉 목록 화면
팔로잉 목록 화면

작업이 완료되면 아래같이 목록이 추출됩니다! 제가 팔로우하는 사람 중에도 저를 팔로우 안 하는 사람이 많았네요 ㅎㅎ 28명이면 10명 중 한 명은 안 했구나 ㅎㅎ 사람 관계에 소홀히 하지 않게 노력해야겠습니다ㅎㅎ

프로그램 실행 결과
프로그램 실행 결과

프로그램 구상부터 실행 장면도 한번 쭉~ 보았습니다. 프로그래밍의 매력은 생각을 실현해낸다는 게 매력적입니다. 물론 하나하나 다 찾아서 볼 수도 있지만 팔로워가 1000명 또는 그 이상인 분들은 시간이 어마어마하게 오래 걸리겠죠??

 

그리고 제가 단순히 만든 프로그램이지만 또 누군가는 필요로 하는 서비스 일 것입니다. 이런 가치를 만들어 가는 것이 매우 재미있습니다. 제가 만든 가치로 누군가에게 큰 도움이 되고 사회에 긍정적인 영향을 주는 프로그램도 만들고 싶네요 ㅎㅎ

이상으로 마치겠습니다. 혹시 본인 아이디에 실행시켜보고 싶으신 분은 댓글 남겨주시면 결과 ID 비밀글로 올려드리겠습니다~

더 많은 정보와 리뷰를 원하시면 여기로!

모바일은 여기로!

반응형
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함