2010-10-31 22 views
6

Python'da, içeriği biçimlendirmek için reStructuredText (docutils) kullanan bir CMS üzerinde çalışıyorum. İçeriğimin birçoğu başka kaynaklardan ithal ediliyor ve genellikle biçimlendirilmemiş metin belgeleri biçiminde geliyor. reST bunun için harika çalışıyor çünkü her şey varsayılan olarak oldukça aklı başında görünüyor. Ben yaşıyorumYeniden Yapılandırılan Metinlerdeki Uyarıları Nasıl Bastırırım veya Devre Dışı Bırakırım?

bir problem, ancak, benim sayfa içeriği enjekte benim web sunucusu veüzerine stderr'e dampingli uyarıları almak olmasıdır. Örneğin, web sayfamda aşağıdaki gibi uyarılar alıyorum:

Sistem İletisi: UYARI/2 (satır 296); geri bağlantı

Sorum şu: Ben bastırmak nasıl yeniden doğrudan bu uyarılar aksi devre dışı bırakmak veya?

İdeal olarak, bir günlük dosyasına dışarı bunlar yazmak isterim ama birisi sadece benim içerik enjekte edilmesini uyarıları nasıl kapatılacağı bana söyleyebilir eğer o mükemmel olurdu. HTML içine kalanını ayrıştırma sorumlu olan

kodu:

from docutils import core 
import reSTpygments 

def reST2HTML(str): 
    parts = core.publish_parts(
          source = str, 
          writer_name = 'html') 
    return parts['body_pre_docinfo'] + parts['fragment'] 

cevap

9
def reST2HTML(str): 
    parts = core.publish_parts(
    source = str, 
    writer_name = 'html', 
    settings_overrides={'report_level':'quiet'}, 
    ) 
    return parts['body_pre_docinfo'] + parts['fragment'] 
+0

sayesinde, foxhop! –

İlgili konular