2016-07-20 4 views
1

Python 3에서 Google에 적절한 방법은 무엇입니까? Google 페이지에 requestsurllib을 사용해 보았습니다. 간단히 res = requests.get("https://www.google.com/#q=" + query)이 Safari에서 Google 페이지를 검사 할 때와 동일한 HTML로 돌아 오지 않습니다. urllib에서도 마찬가지입니다. Bing을 사용할 때도 이와 비슷한 일이 발생합니다. 나는 AJAX에 익숙하다. 그러나, 그것은 지금 가치가 하락한 것으로 보인다.Python으로 Google로가는 방법 urllib 또는 요청 사용

+0

당신은 (실제 브라우저 헤드리스를 시뮬레이션 여부를 위해) 대신의 요청을보다 효율적으로 사용하는 셀레늄을했다 (응답 마임 그렇다면 그냥 일반 HTML을 다운로드). –

답변

0

파이썬에서 HTTP 요청에 사용자 에이전트 헤더를 수동으로 지정하지 않으면 파이썬이 기본적으로 사용자를 추가하여 Google에서 감지 할 수 있으며 사용자가이를 금지 할 수 있습니다.

도움이 될만한 경우 다음을 시도하십시오.

import urllib 
yourUrl = "post it here" 
headers = {'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:23.0) Gecko/20100101 Firefox/23.0'} 
req = urllib.request.Request(yourUrl, headers = headers) 
page = urllib.request.urlopen(req) 
+0

글쎄, 처음에는'urllib 속성이 없습니다 urlopen'하지만 쉽게 해결할 수 있습니다. urllib.requests.urlopen' –

+0

@ DylanSiegler.This는 주로 python3을 사용하기 때문에 발생합니다.하지만 내 코드는 python2.So로 바꿀 것입니다. 그것을 다시하십시오. –

+0

'urllib.request.Request (query, headers = headers)'에있는 쿼리는 무엇입니까? 내가 Google에 원하는 것입니까? –

관련 문제