Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- git
- Javascript
- sqld요약
- 오픽 초보
- 폴링vs이벤트
- 자청
- N-Queen
- 클린 코드
- 클린코드
- BFS
- 파이썬
- 오픽
- Backtracking
- 알고리즘
- 역행자
- 서버아키텍처
- SQLD 이론
- 주석
- sqld
- Python
- beautifulsoup
- MFC
- 서버최적화
- SW개발자를 위한 성능좋은 SQL
- 백준
- SQLD이론
- clean code
- c++
- 게임서버개발
- DP
Archives
- Today
- Total
가취공부하자
BeautifulSoup로 웹 콘텐츠 이미지 추출 및 다운로드 본문
https://movie.naver.com/movie/bi/mi/basic.naver?code=157297#
마약왕
“애국이 별게 아니다! 일본에 뽕 팔믄 그게 바로 애국인기라!”마약도 수출하면 애국이 되던 1970년대 ...
movie.naver.com
위 페이지에서
빨간 박스 부분의 배우 이미지를 추출하고자 한다.
1. 해당 페이지의 HTML을 읽어온다
from bs4 import BeautifulSoup
import urllib.request # urllib2 대체
import os
import re
url = 'https://movie.naver.com/movie/bi/mi/basic.naver?code=157297#'
req = urllib.request.Request(url)
res = urllib.request.urlopen(url).read()
soup = BeautifulSoup(res,"lxml")
2.
이미지를 다운받기 위한 src에 접근하기 위해서는
<div class='people'>
<li>
<img src=''>
순서로 접근해야 한다.
from bs4 import BeautifulSoup
import urllib.request # urllib2 대체
import os
import re
url = 'https://movie.naver.com/movie/bi/mi/basic.naver?code=157297#'
req = urllib.request.Request(url)
res = urllib.request.urlopen(url).read()
soup = BeautifulSoup(res,"lxml")
images = soup.find_all("div",{"class":"people"})
print(images)
images에는 <div class='people'> 코드가 들어있다.
from bs4 import BeautifulSoup
import urllib.request # urllib2 대체
import os
import re
url = 'https://movie.naver.com/movie/bi/mi/basic.naver?code=157297#'
req = urllib.request.Request(url)
res = urllib.request.urlopen(url).read()
soup = BeautifulSoup(res,"lxml")
images = soup.find_all("div",{"class":"people"})
#배우 리스트
#li 태그 가져와서 배열 만들기
pe_list = []
for data1 in images:
pe_list.extend(data1.findAll('li'))
print(pe_list)
findAll함수를 통해 <li> 코드 부분 배열로 추출한다.
from bs4 import BeautifulSoup
import urllib.request # urllib2 대체
import os
import re
url = 'https://movie.naver.com/movie/bi/mi/basic.naver?code=157297#'
req = urllib.request.Request(url)
res = urllib.request.urlopen(url).read()
soup = BeautifulSoup(res,"lxml")
images = soup.find_all("div",{"class":"people"})
#배우 리스트
#li 태그 가져와서 배열 만들기
pe_list = []
for data1 in images:
pe_list.extend(data1.findAll('li'))
# 배열에서 img- >src 만 빼내기
for li in pe_list:
img = li.find('img')
name = img['alt']
img_src = img['src']
#print(img_src,name)
urllib.request.urlretrieve(img_src,"./img/"+ name+'.jpg') #이미지 다운로드
li안의 img 태그를 빼내고 그 안에 속성들은 인덱스 형식으로 추출한다.
결과
참고
https://hi-guten-tag.tistory.com/8
http://www.acornpub.co.kr/book/automate-it (파이썬 비지니스 자동화, 에이콘출판사, 2018)
파이썬과 비즈니스 자동화
파이썬 2.7로 비즈니스 자동화를 위한 필요한 기술을 다루고, 실제로 활용할 수 있도록 도와준다
www.acornpub.co.kr
'Python > (책)파이썬과 비지니스 자동화' 카테고리의 다른 글
데이터 분석의 다양한 측면과 접근방식 (0) | 2022.08.04 |
---|---|
[Python] RESTful API 구현 (0) | 2022.07.31 |
REST(Representational State Transfer)란? (0) | 2022.07.31 |
BeautifulSoup, 웹 스크래핑 (0) | 2022.07.21 |
Tornado를 사용해 비동기 http 서버 실행 (0) | 2022.07.12 |