代码之家  ›  专栏  ›  技术社区  ›  Apreche

Django应用程序中的Ping Feedburner

  •  4
  • Apreche  · 技术社区  · 17 年前

    我有一个Django网站,其中一些提要是通过FeedBurner发布的。我想在保存特定模型的实例时ping feedburner。Feedburner的网站上说要使用XML-RPC ping机制,但是我找不到很多关于如何实现它的文档。

    在django/python中执行xml-rpc ping最简单的方法是什么?

    3 回复  |  直到 16 年前
        1
  •  12
  •   tghw megawac    16 年前

    你可以用姜戈的 signals 保存模型后获取回调的功能:

    import xmlrpclib
    from django.db.models.signals import post_save
    from app.models import MyModel
    
    def ping_handler(sender, instance=None, **kwargs):
        if instance is None:
            return
        rpc = xmlrpclib.Server('http://ping.feedburner.google.com/')
        rpc.weblogUpdates.ping(instance.title, instance.get_absolute_url())
    
    post_save.connect(ping_handler, sender=MyModel)
    

    很明显,你应该用你的应用程序来更新它,并且在你想要不同事件的时候读取信号。

        2
  •  2
  •   Alexander Artemenko    17 年前

    使用可插拔的应用程序,卢克!

    http://github.com/svetlyak40wt/django-pingback/

        3
  •  1
  •   zalew    17 年前

    可能是这样的事情:

    import xmlrpclib
    j = xmlrpclib.Server('http://feedburnerrpc')
    reply = j.weblogUpdates.ping('website title','http://urltothenewpost')
    
    推荐文章