from urllib.request import urlopen
from bs4 import BeautifulSoup
# crawling site url
html = urlopen("https://aihub.or.kr/aihubdata/data/view.do?currMenu=115&topMenu=100&aihubDataSe=realm&dataSetSn=71267")
source = BeautifulSoup(html, "html.parser")
title = source.select_one('div.tabDiv1 > div.contentWrap > ul > li:nth-child(2) > div > table > tbody > tr:nth-child(1) > td:nth-child(4)')
print(title)
print(title.text)
urlopen, BeautifulSoup 를 임포트 한다.
urlopen으로 url을 입력한다.
그런다음 BeautifulSoup로 파싱한다.
여러 함수가 있지만 select_one를 사용해서 원하는 위치를 설정하는 방법을 사용했다.
먼저 사이트에 원하는 사이트에 접속 한 후 개발자 도구를 연다.
개발자 도구에서 Elements를 클릭한다.
위 이미지에서 빨간색 표시를 클릭한다.
그런 다음 crawling 원하는 위치를 선택한다.
원하는 곳 선택.
개발자 도구에서 선택한 위치에 표시된다.
위 사진처럼 표시된다.
개발자 도구 화면에서 표시된 곳에 오른쪽 마우스 킬릭 한 후 Copy > Copy selector 을 클릭한다.
그러면 선택한 곳의 위치를 html 구조로 복사된다.
ex) #content > div.tabDiv1 > div.contentWrap > ul > li:nth-child(1) > div > table:nth-child(2) > tbody > tr > td:nth-child(3)
그런 다음 처음 코드에서 select_one() 안에 붙여넣기 하면 된다. 때에 따라서 앞에 #content > 는 삭제해야 한다.
print(title)은 테그까지 다 출력되고, 안에 텍스트만 얻고 싶으면 .text를 붙여주면 된다.