웹 주소와 utf-8 인코딩 본문
* 웹페이지 url에 한글이 들어가 있을 경우, url 주소를 복붙하게 되면 이상한 문자들로 변형이 된다..
* 웹주소가 utf-8 기법으로 인코딩되어 있는데, 그것이 풀어지기 때문이다.
** 그럴땐 utf-8 인코딩 해제 시 문제가 발생할 여지가 있는 한글문자들을 변환하면 된다.
** urllib.parse.quote("해당문자")를 통해서 인코딩이 가능하다
* 예제는 프롬 소프트웨어의 갓겜 엘든링으로 한다. 아직 사놓고 1시간 밖에 못했다..
** 이후 해당 url을 requests(요청) 해주고 , 요청한 자료의 url을 오픈해서 response를 수신한다
** 수신한 페이지를 html파싱 해준다.
++ 간혹 페이지에 따라서 http response 403 을 수신할 때가 있다.
req = Request(url, headers={"User-Agent" : "Chrome" } )
html = urlopen(req).read()
headers의 옵션은 자동화 봇 방지용으로 사용하는 수집기의 브라우저 종류 명시해준다
정석대로는 , User Agent : "자리"에, 개발자 도구 -> header -> 나의 컴퓨터의 user-agent 정보를 넣어준다
혹은,
req = Request(url )
req.add_header = url('User-Agent','Chrome') # or 내가 사용하고자 하는 브라우저 등등 ..
혹은 !pip install fake-useragent
from fake_useragent import UserAgent
ua =UserAgent()
ua.ie 를 통해서 랜덤적으로 user agent 항목을 여러가지 자동적으로 만들어줄 수 있다.
'BF 2024 > 웹 데이터 수집' 카테고리의 다른 글
Selenium 기초 (0) | 2022.03.03 |
---|---|
Selenium과 크롬드라이버 설치와 시행 (0) | 2022.03.03 |
request & response, http 상태 코드 (0) | 2022.02.28 |
크롬 개발자 도구와 웹페이지 urlopen (0) | 2022.02.28 |
html 태그 (0) | 2022.02.28 |