30_[나홀로메모장] - 조각 기능 구현해보기
- 프로젝트 생성: File -> New Project -> alonememo 불러오기
- flask, pymongo, requests, beatifulsoup 설치
- api 설계하기: 조각 기능 구현하기
모든 프로젝트를 하기 전에는 api 설계를 가장 먼저 해야 함.
테스트 할 조각 기능: url을 가지고 이미지, 링크, 내용을 가지고 오게 해야 함
다음과 같이 안 되는 경우도 있음..
웹페이지에서의 meta 태그 순서와 python코드가 접속했을 때의 meta 태그 순서가 다르기 때문임
beautifulsoup의 다른 사용 방법
다음을 복사
meta 태그 중에서 다음과 같은 속성 property="og:title" 이 일치하는 것을 가져오라는 명령
- 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')
title = soup.select_one('meta[property="og:title"]')
print(title)
실행결과 (성공적으로 가지고 옴)
C:\Users\rokimo\Desktop\sparta\projects\alonememo\venv\Scripts\python.exe C:/Users/rokimo/Desktop/sparta/projects/alonememo/meta_prac.py
<meta content="그린 북" property="og:title"/>
Process finished with exit code 0
print(title['content']) 와 같이 입력하면 텍스트만 가지고 오게 된다.
- 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')
title = soup.select_one('meta[property="og:title"]')['content']
print(title)
실행결과
C:\Users\rokimo\Desktop\sparta\projects\alonememo\venv\Scripts\python.exe C:/Users/rokimo/Desktop/sparta/projects/alonememo/meta_prac.py
그린 북
Process finished with exit code 0
위와 같은 방식으로 여러 요소를 계속 크롤링한다.
- 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')
title = soup.select_one('meta[property="og:title"]')['content']
image = soup.select_one('meta[property="og:image"]')['content']
desc = soup.select_one('meta[property="og:description"]')['content']
print(title,image,desc)
실행결과
C:\Users\rokimo\Desktop\sparta\projects\alonememo\venv\Scripts\python.exe C:/Users/rokimo/Desktop/sparta/projects/alonememo/meta_prac.py
그린 북 https://movie-phinf.pstatic.net/20190115_228/1547528180168jgEP7_JPEG/movie_image.jpg?type=m665_443_2 1962년 미국, 입담과 주먹만 믿고 살아가던 토니 발레롱가(비고 모텐슨)는 교양과 우아함 그 자체인천재...
Process finished with exit code 0
Author And Source
이 문제에 관하여(30_[나홀로메모장] - 조각 기능 구현해보기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@yh271/webbase30저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)