2013-01-14 3 views
1

저는 python을 배우고 urllib2 geturl()이 작동하도록하려고합니다. 지금까지 나는 다음과 같은 해골을 가지고 있습니다 :일부 URL 리디렉션에 urllib2 geturl()이 작동하지 않습니다.

import urllib2 
gh=urllib2.urlopen(http://somewebsite.com/).geturl() 
print gh 

잘 작동하는 것 같습니다. 그러나 예를 들어 here 주어진 URL을 사용하려고하면 "최종 URL"(브라우저에서 작동 함)을 가져올 수 없습니다.

이 문제를 해결하는 데 도움이되는 정보를 제공해 주시면 감사하겠습니다.

+0

@ dm03514 : 작동하지 않습니다. – AJW

답변

8

자바 스크립트를 사용하여 리디렉션되고 urllib2이 자바 스크립트를 처리 할 수 ​​없기 때문에 이러한 상황이 발생합니다. 자바 스크립트 리디렉션을 처리하는 것이 중요하다면 selenium을 사용하십시오.

+0

아! 해명 해줘서 고마워. 이 문제의 해결 방법이 있습니까? – AJW

+0

@JamesW - 셀레늄이 최선의 방법이라고 생각합니다. 때로는 스크립트에서 URL을 추출하는 것이 가능할 수도 있지만,이 경우 균일하지 않으므로 번거롭지 않을 것입니다. – root

+0

답장을 보내 주셔서 감사합니다. 나는 지금 너의 대답을 받아 들였다. – AJW

관련 문제