from bs4 import BeautifulSoup
import urllib.request
1. bs4에서 BeautifulSoup 임포트
2. urllib.request 임포트
data=urllib.request.urlopen("https://www.wsj.com/asia")
3. https://www.wsj.com/asia읽는 파일을 열어서 data로 읽음.
The Wall Street Journal & Breaking News, Business, Financial and Economic News, World News and Video
WSJ online coverage of breaking news and current headlines from the US and around the world. Top stories, photos, videos, detailed analysis and in-depth reporting.
www.wsj.com
soup = BeautifulSoup(data, 'html.parser')
4. BeautifulSoup이 data를 html.parser를 통해 구조를 읽는다. 분해할 준비가 완료된 상태.
* 여기서 잠깐 우리가 원하는 페이지의 소스코드를 확인해보아야 한다 이 때 좋은 툴이 이것이다. 화질이 구리긴 하지만 실제로 사용해보면, 내가 원하는 자료가 어느 태그에 위치하는지 쉽게 파악이 가능하다.
이것으로 미루어보아 내가 찾는 데이터는 h3 태그의 txet 값이다.
print(soup.prettify())
abe1 =soup.find_all('h3')
5. find_all 함수를 통해 'h3' 태그 모두를 가져온다.
6. 이렇게 걸러진 자료는 list 형태로 abe1에 저장된다.
text=[]
for i in abe1:
text.append(i.get_text())
print(text)
6. text라는 list를 하나 만들어 준 뒤 반복문을 시행한다.
7. abe1의 각 원소 즉, h 태그의 텍스트에 대해서 text라는 리스트에 추가시킨다.
8. 위와 같이 텍스트만 뽑힌 것을 볼 수 있다.
abe2 = []
9. 내가 원하는 것은 Abe에 관한 이야기이므로 다시 abe2라는 리스트를 만들고 반복문을 시행한다.
for i in text:
if "Abe" in i:
abe2.append(i)
10. 텍스트의 원소 i에 대하여 문자열 i가 Abe가 있다면 그 i를 abe2에 추가한다.
print(abe2)
11. Abe가 속한 문자열을 확인할 수 있다.
'2019년 혁신성장 청년인재 집중양성(빅데이터) > 집중양성과정 프로젝트 01' 카테고리의 다른 글
셀레니움으로 트위터 크롤링[번역] (0) | 2019.07.25 |
---|---|
6. 크롤링한 JSON 파일을 SQLITE DATABSE로 옮기기 (0) | 2019.07.23 |
04. mysql과 python 연결하기 (0) | 2019.07.22 |
3. 파이썬 신문사 이미지 크롤링 (0) | 2019.07.12 |
2. 파이썬 신문사 홈페이지 텍스트 크롤링 (0) | 2019.07.12 |