나는 Tornado의 초보자이며이를 사용하여 비동기 HEAD HTTP 요청을 작성하려고합니다. 토네이도는 어떻게 된거 야?Tornado와 함께 HEAD HTTP 요청을 보내는 방법은 무엇입니까?
내 질문은 영감이 하나를 파이썬에서 How do you send a HEAD HTTP request in Python 2?
나는 Tornado의 초보자이며이를 사용하여 비동기 HEAD HTTP 요청을 작성하려고합니다. 토네이도는 어떻게 된거 야?Tornado와 함께 HEAD HTTP 요청을 보내는 방법은 무엇입니까?
내 질문은 영감이 하나를 파이썬에서 How do you send a HEAD HTTP request in Python 2?
이 AsyncHTTPClient.fetch()
전화에 method="HEAD"
를 추가합니다.
response = await http_client.fetch("http://example.com", method="HEAD")
3.5 : 모든 처리가 완료되고 프로그램이 준비가 될 때까지 실제 코드에서
from tornado.httpclient import AsyncHTTPClient
from tornado.ioloop import IOLoop
async def fetch_head():
response = await http_client.fetch("http://www.google.com/")
print(response.headers)
IOLoop.current().stop()
http_client = AsyncHTTPClient()
IOLoop.current().add_callback(fetch_head)
IOLoop.current().start()
는 "중지"를 호출하지 않습니다 나가기 위해서. 파이썬은 비동기 교체 이전에
은/gen.coroutine 및 수율 기다리고 :from tornado import gen
@gen.coroutine
def fetch_head():
response = yield http_client.fetch("http://www.google.com/")
print(response.headers)
IOLoop.current().stop()
나는 이것을 매 순간 반복하고 싶은가요? 매번 다른 URL? 이는 페이지가 존재하는지 알기 위해 무작위 검사를하는 크롤링 응용 프로그램을위한 것입니다. – etayluz
[백그라운드에서 실행 중] (http://www.tornadoweb.org/ko/latest/guide/coroutines.html#running-in-the-background)의 예를 따르십시오. try/catch 블록 내에서 URL을 가져오고, 예외가있는 경우 무언가 수행 한 다음 잠시 기다린 후 루프를 반복합니다. –