2009-10-05 78 views
0

我被要求快速整合一个小型系统,它需要一个雅虎XML提要,解析它并根据它创建一个HTML片段。Django - 解析XML,输出为iFrame的HTML片段?

目前,我正在使用Django来处理URL路由,使用一些Python脚本,并输出一些HTML(硬编码维度作为内联CSS),希望可以放入iframe中这部分是我的一半想法)。

我也被要求抛出一些其他的东西来解析Twitter XML Feed,Wordpress XML搜索结果等,这些东西可以重新排列在iFrames的页面上。

网址可能会与http://foobar.com/yahoofeed/keyword/dimensions或/ twitter/keyword/dimensions一样,其中keyword是搜索关键字,而dimensions是某些预先确定的大小之一(我想如果有更多参数,我应该将它们作为查询字符串,而不是虚拟子目录作为URL的一部分,对吗?思考?两者的优点/缺点?)。

但是,我想知道这是否是最好的方法来做到这一点?它对我来说似乎有点骇人听闻,但我不确定。目前的方法有问题吗?

干杯, 维克多

回答

0

您的解决方案听起来不错。你的问题的本质是把一些东西粘合在一起,所以它总是会有点特别和黑客(而Python非常适合这样的工作)。

我会使用的查询字符串任何事情:

  • 并不代表永久的资源
  • 代表某种查询或输入选项
  • 的代表输出选项

我会为此提供一个例外,为简单案例提供漂亮的URL,并且如果始终需要一个选项(并且始终需要),那么您可以将其作为路径的一部分。所以我认为将关键字保持为URL的一部分没有问题,但尺寸应该是查询字符串选项。

1

解析XML我更喜欢xml.dom.minidom,因为它使用简单,它是标准python库的一部分。

在你的情况,我认为你应该使用查询字符串,而不是长URL,URL是灵活的,但处理可变长度的参数,最好使用GET或POST。这一点的好处是,你不必为每个可能的变量组合定义URL。

我想你找到了最好(也是最简单)的方法来做到这一点。