不知又没有童鞋研究过这货,现在有如下一个问题:
自己想做一个 http 客户端,到网站抓取内容,同时该客户端相当于一个 api,需要将抓取到的内容处理之后返回给 api 调用端(这个调用初步打算就是本地调用,基于库的调用)。由于看到 Twisted 的异步事件比较给力,所以索性尝试尝试,但是对于其核心的 reactor 理念还不甚掌握,整个想法进行下来,感觉有太多 tricky 的东西在里面。
目前自己是这样做的:
基于 Twisted 提供的 http 方法,包装了一个 Request 的类,处理 http 请求,当请求完成之后用 Deferred 对象调用回调。但是目前整个程序就感觉只有这块内容需要用到 reactor 做 main loop,其余部分应该是没必要吧?所以由于 reactor 这个纠结的东西存在,现在自己是把它放到一个 thread 里面做,但是我认为每个请求
reactor.run() 之后,请求完成 reactor.stop() 直接关掉。但是当第二个请求到来时,就没办法再
reactor.run() 抛出 reactor 不可重启的异常,因此感觉目前思路有问题,所以请教有经验的童鞋指点指点~谢谢!
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
https://www.v2ex.com/t/19315
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.