url을 통해서 페이지를 열때 필요한 모듈이다. 보통은 urlopen, Request를 import하지만, 주소에 한글이 있을 경우 그것을 디코더 하기 위해서 urllib자체를 import한다.
< 한글주소가 있는 url 디코더 후 페이지 정보 가져오기 >
import urllib from urllib.request import urlopen, Request from bs4 import BeautifulSoup html = "https://ko.wikipedia.org/wiki/{search_words}" # https://ko.wikipedia.org/wiki/여명의_눈동자 req = Request(html.format(search_words=urllib.parse.quote("여명의_눈동자"))) # 글자를 URL로 인코딩 response = urlopen(req) response.status soup = BeautifulSoup(response, "html.parser")
< User Agent의 예시 >
#pip install fake_useragent from urllib.request import Request, urlopen from fake_useragent import UserAgent from bs4 import BeautifulSoup url_base = "https://www.chicagomag.com/" url_sub = "chicago-magazine/november-2012/best-sandwiches-chicago/" url = url_base + url_sub ua = UserAgent() # user-Agent 에 넣을 내용을 랜덤하게 만들어준다. req = Request(url,headers={"User-Agent": ua.ie}) html = urlopen(req) soup = BeautifulSoup(html, "html.parser") print(soup.prettify)
태그들로 이루어진 정보들 속에서 내가 원하는 부분을 가져오기 쉽게 도와주는 모듈이다. bs4에 들어있는 BeautifulSoup을 import한다.
tmp_one.find(class_="sammyRank").get_text() tmp_one.find("div",{"class":"sammyListing"}).get_text(). tmp_one.find("a")["href"]
a = soup.select_one("#mw-content-text > div.mw-parser-output")