2010-05-12 4 views
0

원래 url이라는 변수 cpanel이 있었고 코드는 아무 것도 반환하지 않습니다. 왜 그런가? 그것은 다른 것에 의해 사용되는 것처럼 보이지 않지만, 내가 바라 보는 뭔가가 있어야합니다.여기서 'url'이 변수로 작동하지 않는 이유는 무엇입니까?

import urllib2 

cpanel = 'http://www.tas-tech.com/cpanel' 
req = urllib2.Request(cpanel) 
try: 
    handle = urllib2.urlopen(req) 
except IOError, e: 
    if hasattr(e, 'code'): 
     if e.code != 401: 
      print 'We got another error' 
      print e.code 
     else: 
      print e.headers 
      print e.headers['www-authenticate'] 

답변

0

난 당신 같은 http://www.tas-tech.com:2082/ 또는 뭔가를 (가 호스팅 제어 패널 인 경우) /cpanel 실제로 (302) 리디렉션 것을 확신합니다. 리디렉션을 처리하기 위해 업데이트해야합니다 (또는 실제 주소로 요청을 보내는 것이 더 좋습니다).

+0

아, 고마워. 나중에 새 변수를 사용하지 않을 때 302 오류가 발생했음을 알았습니다. 무엇이 바뀌 었는지는 모르지만, 지금은 그것을 재현 할 수 없기 때문에 모든 것이 잘됩니다. – kryptobs2000

2

urllib2.Requesturl라는 이름의 매개 변수가 있지만, 정말 문제의 원인해서는 안됩니다, 그것은 예상대로 작동 : 기능 위의 코드는 당신이 cpanel을 전환 동일

>>> import urllib2 
>>> url = "http://www.google.com" 
>>> req = urllib2.Request(url) 
>>> urllib2.urlopen(req).code 
200 

url. 그래서 문제는 다른 곳에서 있었을 것입니다.

+0

아, 그래, 고마워. 확실히 webdestroya는 문제가 무엇인지 알아 냈습니다. 리디렉션과 관련이 있습니다. 왜 지금 일어나지 않고 있는지 확실하지 않지만, 그것은 나에게 충분히 이해가됩니다. – kryptobs2000

관련 문제