想利用 eventmachine 做一个 http 的高并发爬虫程序,但是没有太多头绪 所以想看看大家有没有开源的软件可以推荐我学习一下。
或者简单的如下是否可行:
def http_oper(rul)
f = Fiber . current
http = EventMachine :: HttpRequest . new ( url , : connect_timeout = > 10 , : inactivity_timeout = > 20 ) . get
http . callback { f . resume ( http ) }
http . errback { f . resume ( http ) }
Fiber . yield
if http . error
p [ : HTTP_ERROR , http . error ]
end
http
end
EM.run {
while 1
url = get_url ## 一个获取目标url的接口,具体实现没写
Fiber .new{
data = http_oper(url)
}.resume
end
EM.stop
}