4

私は django サイトを持っており、一部のフィードは FeedBurner を通じて公開されています。特定のモデルのインスタンスを保存するたびに FeedBurner に ping を送信したいと考えています。FeedBurner の Web サイトには、XML-RPC ping メカニズムを使用するように記載されていますが、その実装方法に関するドキュメントはあまり見つかりません。

django/PythonでXML-RPC pingを実行する最も簡単な方法は何ですか?

4

3 に答える 3

12

signalsモデルが保存された後、Django の機能を使用してコールバックを取得できます。

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)

明らかに、アプリで機能するものでこれを更新し、別のイベントが必要な場合に備えてシグナルを読み取る必要があります。

于 2009-04-10T03:14:49.650 に答える
2

プラグ可能なアプリを使用してください、ルーク!

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

于 2009-04-10T05:48:24.100 に答える
1

多分そのようなsth:

import xmlrpclib
j = xmlrpclib.Server('http://feedburnerrpc')
reply = j.weblogUpdates.ping('website title','http://urltothenewpost')
于 2009-04-10T02:51:02.763 に答える