2
파이썬 (파이썬 3.2를 사용하지만 파이썬 2.x에서는 거의 같아야합니다)에서 특정 URL에 대한 요청을 시도합니다. 액세스 거부로 오류의 경우 오류가 발생해도 HTTPResponse를 검색하십시오.
는, 나는 예외가 얻을 :>>> request = urllib.request.urlopen(myurl)
...
File "/usr/lib/python3.2/urllib/request.py", line 495, in http_error_default
raise HTTPError(req.full_url, code, msg, hdrs, fp)
urllib.error.HTTPError: HTTP Error 401: Unauthorized
을하지만 난 오류의 경우에는 요청의 헤더를보고 싶습니다.
>>> request = urllib.request.urlopen(myurl)
>>> print(request.status)
401
>>> print(request.headers)
...
는 또한 페이지가 리디렉션 상태 코드 등 (301)로 응답 할 때, 내가 얻을 응답이 리디렉션 페이지,하지 (내가 원하는 하나입니다) 첫 번째 인 것으로 나타났습니다.
어떻게 할 수 있습니까?
내가 좋아하는 것 같습니다. 수락하기 전에 호스트가 다운되었거나 존재하지 않을 때 호스트가이를 수행 할 수있는 방법을 알고 있습니까? 'r = requests.get ('http : //google.comm')'은 충돌하기 전에 오랜 시간이 걸립니다. –
요청 패키지와 같은 치어 리더가되어서 죄송합니다 ...하지만 정말 사용하는 것이 훨씬 더 좋네요. 나이를 위해 urllib2를 사용했다. 그러나 5 분 동안 요청을 사용하고 난 후에 내가 좋아 졌던 것처럼 느꼈다. –
물론 ... ... timeout 옵션을 사용하면 –