728x90
반응형
* 본 포스팅은 주피터 노트북에서 진행하였다.
[ 용어 정리 ]
크롤링(crawling) 혹은 스크레이핑(scraping)은 웹 페이지를 그대로 가져와서 거기서 데이터를 추출해 내는 행위다. 크롤링하는 소프트웨어는 크롤러(crawler)라고 부른다.
requests와 bs4를 이용하여 크롤러를 만들 수 있지만 자바스크립트의 동작이 많은 웹 사이트일 경우 한계가 있기 때문에 selenium을 사용한다.
chrome driver가 필요한데 만약 설치가 안되어 있다면 아래 포스팅을 참고하면 좋을 것이다.
2021.06.09 - [Data Analysis/web crawling] - [Crawling] 크롬 드라이버(ChromeDriver) 설치하기
from selenium import webdriver
url = "https://pjt3591oo.github.io"
driver = webdriver.Chrome('chromedriver')
driver.get(url)
브라우저가 자동으로 열린다.
만약 selenium이 없다면 아래의 코드를 이용하면 된다.
!pip install selenium
요소를 가져오자
selected_id = driver.find_element_by_id('nav-trigger') #id로 요소 선택
print(selected_id)
print(selected_id.tag_name) #태그명
print(selected_id.text) #태그에 속한 문자
selected_p = driver.find_element_by_tag_name('p') #id로 요소 선택
print(selected_p)
print(selected_p.tag_name) #태그명
print(selected_p.text) #태그에 속한 문자
selected_tags_p = driver.find_elements_by_tag_name('p') #id로 요소 선택
print(selected_tags_p)
selected_link = driver.find_element_by_class_name('p')
print(selected_link)
print(selected_link.tag_name)
print(selected_link.text)
728x90
반응형
'Data Analysis > web crawling' 카테고리의 다른 글
[Crawling] logging 사용 / 파일에 문서 생성하기 (0) | 2021.06.09 |
---|---|
[crawling] 웹 제어하기 / 키보드 제어 (selenium) (0) | 2021.06.09 |
[Crawling] 크롬 드라이버(ChromeDriver) 설치하기 (0) | 2021.06.09 |
[Crawling] 사이트 분석/ 크롤러 만들기 (0) | 2021.06.08 |
[Crawling] 정규식을 이용한 bs4 고급 스킬 / 정규식 정리 / match와 search 비교 (0) | 2021.06.08 |