많은 사이트가 서버 트래픽을 유발하는 크롤링을 막고 있다. 따라서 크롤링을 하기 위해서는 나 지금 프로그램이 아니라 사용자야~ 해주는게 필요하다.

이는 User Agent를 설정함으로써 해결할 수 있다.

 

http://www.useragentstring.com

 

UserAgentString.com - unknown version

 

www.useragentstring.com

이곳에 가면 정보를 얻을 수 있다.

 

몇가지 예시

The Chromium browser on Pi3
Mozilla/5.0 (X11; Linux armv7l) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.84 Safari/537.36

 

그럼 파이썬에서 어떻게 적용하죠???

# 크롤링 헤더변경 필요
headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36',}
data=requests.get(url,headers=headers)

# 셀레니움 헤더변경 필요
user_agent = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36'    
options.add_argument('user-agent={0}'.format(user_agent))
options.add_argument('window-size=1920x1080')
options.add_argument("disable-gpu")
options.add_argument('headless')
driver = webdriver.Chrome(dirver_loc, options=options)

+ Recent posts