티스토리 뷰

반응형

프로젝트 준비 - URL 에서 페이지 정보 가져오기(meta태그 스크래핑)

이렇게, API에서 수행해야하는 작업 중 익숙하지 않은 것들은, 따로 python 파일을 만들어 실행해보고, 잘 되면 코드를 붙여넣는 방식으로 하는 게 편합니다.

 

그럼, meta tag가 뭔지 공부해볼까요?

 

어떤 부분에 스크래핑이 필요한가요?

우리는 기사URL만 입력했는데, 자동으로 불러와지는 부분들이 있습니다.

함께 확인해볼까요?

http://spartacodingclub.shop/

 

스파르타코딩클럽 | 나홀로 메모장

 

spartacodingclub.shop

바로 '기사 제목', '썸네일 이미지', '내용' 입니다.

이 부분은, 'meta'태그를 크롤링 함으로써 공통적으로 얻을 수 있습니다.

meta태그가 무엇이고, 어떻게 스크래핑 하는지, 함께 살펴볼까요?

meta 태그에 대해 알아보기

  • (링크)에 접속한 뒤 크롬 개발자 도구를 이용해 HTML의 생김새를 살펴볼까요?
  • 메타 태그는, <head></head> 부분에 들어가는, 눈으로 보이는 것(body) 외에 사이트의 속성을 설명해주는 태그들입니다.예) 구글 검색 시 표시 될 설명문, 사이트 제목, 카톡 공유 시 표시 될 이미지 등
  • 우리는 그 중 og:image / og:title / og:description 을 크롤링 할 예정입니다.

meta 태그 스크래핑 하기

연습을 위해 meta_prac.py 파일을 만들어봅니다. 기본 준비를 합니다.

[코드스니펫] - 크롤링 기본 코드

import requests

from bs4 import BeautifulSoup

url = 'https://movie.naver.com/movie/bi/mi/basic.nhn?code=171539'

 

headers = {'User-Agent' : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64)AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36'}

data = requests.get(url,headers=headers)

 

soup = BeautifulSoup(data.text, 'html.parser')

 

# 여기에 코딩을 해서 meta tag를 먼저 가져와보겠습니다.

 

select_one을 이용해 meta tag를 먼저 가져와봅니다.

select의 새로운 사용법! 이렇게 또 알아가네요~!

 

og_image = soup.select_one('meta[property="og:image"]')

og_title = soup.select_one('meta[property="og:title"]')

og_description = soup.select_one('meta[property="og:description"]')

 

print(og_image)

print(og_title)

print(og_description)

 

가져온 meta tag의 content를 가져와봅시다.

 

url_image = og_image['content']

url_title = og_title['content']

url_description = og_description['content']

 

print(url_image)

print(url_title)

print(url_description)

반응형
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
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
링크
글 보관함