用requests寫了個多線程,感覺有點慢,還有其他方法麼?
使用 Tornado 的 curl 用戶端支持,讀到請求頭就關閉連線。 (我還沒試過。如果它提供的 HTTP 用戶端不支援中途關閉連線的話,可以像我這樣使用 TCP 然後用 http-parser 來解析。)
好吧,其實你可以直接給 fetchtitle 加個取狀態碼的擴充就可以了…(記得裝 pycurl 哦)
python本來就慢,想速度快就直接寫tcp請求然後讀回复,讀到狀態後就關掉socket。
使用grequests,對requests進行了並發封裝
https://github.com/kennethrei...
這種情況可以考慮使用gevent,tornado,scrapy-redis,asyncio!
用Head請求能快一點吧?
Head
使用 Tornado 的 curl 用戶端支持,讀到請求頭就關閉連線。 (我還沒試過。如果它提供的 HTTP 用戶端不支援中途關閉連線的話,可以像我這樣使用 TCP 然後用 http-parser 來解析。)
好吧,其實你可以直接給 fetchtitle 加個取狀態碼的擴充就可以了…(記得裝 pycurl 哦)
python本來就慢,想速度快就直接寫tcp請求然後讀回复,讀到狀態後就關掉socket。
使用grequests,對requests進行了並發封裝
https://github.com/kennethrei...
這種情況可以考慮使用gevent,tornado,scrapy-redis,asyncio!
用
Head
請求能快一點吧?