【간단】Python으로 Wikipedia를 웹 스크래핑 해보자 【초보자용】
세라 ⇒ 대형 효 🐯입니다.
내 Twitter 계정
( htps : // 라고 해서 r. 코m/세라다이 히로 )
그럼,
미경험으로부터 엔지니어를 목표로 하는 분을 향해 매일 발신하고 있습니다.
이번에는 파이썬에서 Wikipedia의 스크래핑을 수행하는 방법을 기사로 만들고 싶습니다.
그럼 시작하겠습니다.
파이썬으로 스크래핑하는 데 항상 사용하는 타사 라이브러리가 두 가지 있습니다.
그것이
· Requests
· BeautifulSoup
입니다.
각각 간단히 설명하면,
요청
⇒URL을 여는 라이브러리
BeautifulSoup
⇒ HTML에서 데이터 추출
같은 느낌입니다.
Requests에서 페이지를 열고 BeautifulSoup에서 데이터를 가져오는 이미지입니다.
파이썬 코드의 시작 부분에이 두 라이브러리를 가져 오는 코드를 작성하십시오.
wikipedia.py
import requests,bs4
■ Wikipedia의 Python 기사를 스크래핑
이번에는 wikipedia의 Python 기사를 스크래핑하여 목차를 표시하는 앱을 만듭니다.
앱이라고 해도 기술하는 코드는 단 7행이므로, 안심해 주세요.
먼저 wikipedia에서 Python 기사를 검색합니다.
이 URL을 복사하여 다음과 같이 URL 변수에 넣습니다.
wikipedia.pyurl = 'https://ja.wikipedia.org/wiki/Python'
그리고 그 URL의 페이지를 여는 다음 주문을 불러옵니다.
wikipedia.pyres = requests.get(url)
res는 변수이므로 이름은 자유입니다.
물론 1과 2는 다음과 같이 한 줄로 쓸 수도 있습니다.
wikipedia.pyres = requests.get('https://ja.wikipedia.org/wiki/Python')
그런 다음 이 URL에서 HTML을 가져오는 다음 주문을 주장합니다.
wikipedia.pysoup = bs4.BeautifulSoup(res.text, "html.parser")
덧붙여 html.parser는, html의 태그 정보로부터 정보를 해석하는 프로그램입니다.
처음에는 HTML을 다루기 쉽게 해준다는 해석으로 OK입니다.
그런 다음 wikipedia의 목차 부분에 커서를 가져옵니다.
거기에서 마우스 오른쪽 버튼을 클릭하고 확인을 클릭합니다.
그러면 다음과 같은 html 코드가 나옵니다.
목차를 둘러싸고 있는 div 태그의 id를 확인하면 toc이 되고 있네요.
그래서이 div 태그 "toc"내의 모든 요소를 다음과 같이 당깁니다.
wikipedia.py index = soup.select('#toc')
(이 경우 id이므로 "#"가 붙어 있습니다 만, class의 경우는 "."를 붙여주세요)
이제 index라는 목록에 목차 요소가 포함되었습니다.
※왜 목록인가?
나중에 for 문을 사용하여 색인 내용을 표시합니다.
wikipedia.pyfor i in index:
print(i.getText())
.getText()를 붙이면 HTML 태그를 제거할 수 있습니다.
지금까지 작성한 코드
wikipedia.pyimport requests,bs4
url = 'https://ja.wikipedia.org/wiki/Python'
res = requests.get(url)
soup = bs4.BeautifulSoup(res.text, "html.parser")
index = soup.select('#toc')
for i in index:
print(i.getText())
이렇게 하면
이렇게 목차를 표시할 수 있습니다.
※리스트가 되어 돌려주어지는 이유는, select() 메소드가 모든 요소를 돌려주는 메소드이기 때문입니다.
하나만 요소를 반환하려면 select_one() 메서드를 사용합니다.
그래서 이번에는 파이썬으로 스크래핑하는 방법을 간단히 설명했습니다.
끝까지 읽어 주셔서 감사합니다!
Reference
이 문제에 관하여(【간단】Python으로 Wikipedia를 웹 스크래핑 해보자 【초보자용】), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/seradaihyo/items/006c5f1c86314a3b7a38
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
url = 'https://ja.wikipedia.org/wiki/Python'
res = requests.get(url)
res = requests.get('https://ja.wikipedia.org/wiki/Python')
soup = bs4.BeautifulSoup(res.text, "html.parser")
index = soup.select('#toc')
for i in index:
print(i.getText())
import requests,bs4
url = 'https://ja.wikipedia.org/wiki/Python'
res = requests.get(url)
soup = bs4.BeautifulSoup(res.text, "html.parser")
index = soup.select('#toc')
for i in index:
print(i.getText())
Reference
이 문제에 관하여(【간단】Python으로 Wikipedia를 웹 스크래핑 해보자 【초보자용】), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/seradaihyo/items/006c5f1c86314a3b7a38텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)