Skip to content

tlsrl6427/capstone

Repository files navigation

빅데이터를 이용한 SEO분석


Description

블로그 크롤링을 통해 상위 블로그의 특징을 알아내고 유저의 블로그와 비교한다.

input: 유저의 블로그 URL
output: 유저 블로그와 상위 블로그의 비교점(사진, 텍스트)


Code explannation

  • 블로그 크롤링

    • get_data(keywords, client_id, client_secret, naver_api, length): api 사용여부 및 전처리 함수

      keywords: 검색할 키워드
      client_id: (네이버 api 사용시) id코드
      client_secret: (네이버 api 사용시) secret코드
      naver_api: 네이버 api 사용 여부(True, False)
      length: 최대로 검색되는 블로그 개수(최대 1000개)
      
    • blog_search(keyword, length): BeautifulSoup를 이용한 크롤링

      keyword: 검색할 키워드
      length: 최대로 검색되는 블로그 개수(최대 1000개)
      
    • naver_api_blog_url(keyword, client_id, client_secret, length): 네이버 api를 이용한 크롤링

      keywords: 검색할 키워드
      client_id: 네이버 개발자 센터에서 발급되는 id코드
      client_secret: 네이버 개발자 센터에서 발급되는 secret코드
      length: 최대로 검색되는 블로그 개수(최대 1000개)
      
    • utils.py: feature들을 뽑아내는 함수

      # feature
      text_amount: 본문 분량
      keyword_mentioned: 키워드 언급 횟수
      commentNum: 댓글 개수
      keyword_100: 첫 100단어안에 키워드 포함 여부(포함1, 미포함0)
      keyword_title_data: 제목에 키워드 포함 여부
      link_num_data: 링크 개수
      player_num_data: 동영상 개수
      img_num_data: 이미지 개수
      poDate: 포스트 날짜
      past_date: 현재날짜-포스트 날짜=지난 날짜
      five_day_visitor: 최근 5일동안의 방문자 수 
      

input: keyword, length 등
output: 크롤링한 블로그 본문에서 뽑은 feature들의 list


  • Decision Tree

    Decision Tree 참고 링크
    export_text 참고 링크

    input: 최적의 decision tree
    output: 상위 블로그와 비교

    ex)
    treetext = export_text(dtc, feature_names=data_txt)
    …
    
    상위블로그 조건
    past_date <= 61.50
    text_amount >  839.50
    past_date <= 10.50
    

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •