【问题标题】:Python web framework for I/O intensive page [closed]用于 I/O 密集型页面的 Python Web 框架 [关闭]
【发布时间】:2013-08-09 10:31:59
【问题描述】:

我有一个 I/O 密集型任务(它会抓取网页)。我想通过 Web API 使这个任务可用,并在它之上构建了一些 JavaScript+HTML 界面。我想用 Python 来做,因为我已经有一组 Python 脚本来实现这个任务。

现在我正在寻找一个 Python Web 框架来执行此操作。 对于 I/O 密集型网页,您可以推荐什么 Web 框架?

更多细节:

  • 我已经使用过 Flask,我很喜欢它
  • 我不需要用户管理,但我需要会话
  • 我想用 Angular/Ember 构建实际的 UI

【问题讨论】:

  • 建议:将您的爬虫构建为一个进程。将您的 Web 界面构建为一个完全独立的项目,该项目查询相同的后备存储(RDBMS、NoSQL 存储等)。他们可能有完全不同的需求,因此在一个框架内创建一个包含所有活动部分的“超级项目”可能不是一个好主意。
  • 这个想法是“按需”抓取,因为我需要密码和用户的电子邮件来抓取。所以我只能在用户登录时抓取。而且我不想存储任何东西,因为那意味着我需要用户管理、数据库和所有这些东西。

标签: python web frameworks io


【解决方案1】:

Django 是最流行的 Python 网络框架。

【讨论】:

  • 是的。但是当涉及到非常长时间运行的 I/O 绑定任务时,它与 Flask 相比有什么不同吗?
【解决方案2】:

因为它是关于网络爬虫的,所以我会选择Scrapy 作为爬虫工具和twisted 事件驱动的网络引擎/网络框架。 Scrapy 实际上是建立在twisted 之上的,所以这一套对你来说可能是个不错的选择。

另外,看看tornado 使用非阻塞 I/O 的 Web 框架。

希望对您有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-09-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-18
    • 2010-11-24
    • 1970-01-01
    相关资源
    最近更新 更多