웹크롤링 도중 서버에서 크롤링 시도를 거부할 경우
직접 웹을 열지않고 html형식을 가져오려면
첫시도 몇번에는 가능했지만 여러번이 되면 html형식을 가져오려는 것을 거부하는 경우가 생긴다.
이럴경우에는 user agent 정보를 넣어주면된다.
간단히 말하면 내가 사람이고 직접접속하는 것이라고 말해주는 것이다.
접속하는 사람의 정보를 알려주는것이다.
https://www.whatismybrowser.com/detect/what-is-my-user-agent
What is my user agent?
Every request your web browser makes includes your User Agent; find out what your browser is sending and what this identifies your system as.
www.whatismybrowser.com
url = 'https://nadocoding.tistory.com'
headers = {'User-Agent':'에이전트'}
res = requests.get(url, headers = headers)
res.raise_for_status()
res.text
헤더에 유저에이전트를 명시하고 requests의 get함수를 이용할 때 헤더 정보를 입력하면 된다.
모든 사용자가 자신마의 유저에이전트 정보를 가지는 데 자신의 유저에이전트는
상단의 웹링크에서 확인할 수 있다.
여기서파란박스에 해당하는 녀석들이 고유한 유저정보이다.
서버에서 정보를 가져오는 것을 막았던 경우라면 유저에이전트를 넣으면 해결될 것이다.
'웹크롤링' 카테고리의 다른 글
[ 웹크롤링 ] 셀레니움 스크롤하기, 유튜브 댓글크롤링 (0) | 2021.08.26 |
---|---|
[ 웹크롤링 ] 셀레니움 설치, 동적 크롤링 - bs4, requests로 안되는 페이지 크롤링하기 (0) | 2021.08.25 |
[ 웹크롤링 ] 카카오api를 사용하여 지오코딩하기 위경도가져오기 (0) | 2021.08.24 |
[ 웹크롤링 ] 공공 API이용하기 공휴일 정보 가져오기 (3) | 2021.08.23 |
[ 웹크롤링 ] 파이썬 크롤링 기초 BeautifulSoup, requests (1) | 2021.08.23 |