2008-10-25 13 views
10

Wszelkie biblioteki Pythona do analizy plików konfiguracyjnych Apache lub jeśli nie python, czy ktoś jest tego świadomy w innych językach (perl, php, java, C#)? Jak będę w stanie przepisać je w python. istniejeWszelkie biblioteki Pythona do analizy plików konfiguracyjnych Apache?

+0

zadawania pytań nam polecić lub znaleźć książki, narzędzia, biblioteki oprogramowania, samouczek lub innych zasobów poza miejscem są off-topic na przepełnienie stosu, ponieważ mają tendencję, aby przyciągnąć uparty odpowiedzi i spam. – GhostCat

+0

Czasami nawet uparte opinie są dobre, kiedy nie masz nic do zrobienia. Teraz już tego nie potrzebuję, ponieważ pytanie było zadawane w przeszłości, ale czasami pomocne jest otrzymywanie rekomendacji, nawet jeśli są one opiniotwórcze. – daniels

+0

Powiedzmy to tak: nie wiem, czy to pytanie było ważne 9 lat temu. Ale na pewno zamknęłoby się, gdyby dzisiaj zapytano; ponieważ w sposób oczywisty narusza zasadę "brak zaleceń". I widzisz; co się dzieje tutaj - wszystkie te odpowiedzi są (i tak naprawdę mogą być) tylko ** linkami. Tak więc, prędzej czy później ... te linki mogą się zepsuć; a następnie odpowiedź okazuje się bezużyteczna. – GhostCat

Odpowiedz

7

znalazłem ciekawą Apache Config parser dla pytona tutaj: http://www.poldylicious.de/node/25

Apache Config Parser wspomniano nie jest udokumentowany, ale działa.

+0

Jak korzystać z modułu, który wskazałeś? – Anand

1

biblioteki No Python o tym nie wiem, ale tu jest Perl jedno: http://packages.debian.org/sid/libapache-configfile-perl

Package: libapache-configfile-perl 
Priority: optional 
Section: interpreters 
Installed-Size: 124 
Maintainer: Michael Alan Dorman 
Version: 1.18-1 
Depends: perl (>= 5.6.0-16) 
Description: Parse an Apache style httpd.conf configuration file 

This module parses the Apache httpd.conf, or any 
compatible config file, and provides methods for 
you to access the values from the config file. 

Jeśli nie przepisać to w Pythonie, zaktualizuj swój post wspomnieć nazwę pakietu na PyPI! :)

0

ZConfig, jak sądzę, był używany ze schematem do analizowania plików konfiguracyjnych Apache; nie wydaje się już, ale jest zorientowany na przetwarzanie tych typów plików i przekształcenie konfiguracji w obiekt Pythona. Szybkie spojrzenie na dokumentację sugeruje, że nie byłoby zbyt trudno ustawić schemat ZConfig odpowiadający dowolnej opcji Apache, którą chcesz przeanalizować i sprawdzić.

http://pypi.python.org/pypi/ZConfig/2.6.0

3

grupa Emerging Technologies Red Hat ma Augeas (napisany w C, ale z powiązaniami Pythona dostępny) generycznego narzędzia konfiguracji systemu z „soczewki” do odczytu i zapisu różnych formatów plików konfiguracyjnych. Zastanowiłbym się nad zbadaniem dostępności obiektywu dla Apache.

+0

Brak obiektywów dla plików konfiguracyjnych Apache. – Teddy

+1

Istnieje teraz obiektyw Httpd. –

+1

W Debianie/Ubuntu, korzystanie z biblioteki pypi https://pypi.python.org/pypi/python-augeas wydaje się polegać na tym, że najpierw zainstalowano https://launchpad.net/ubuntu/+source/augeas w systemie docelowym . – ThorSummoner

1

Dostępny jest również jeden nowy analizator składni.

Nadal brakuje dokumentacji, jednak jest dość proste do zrozumienia.


Przykład

import apache_conf_parser 
import pprint 

DEFAULT_VHOST = '/etc/apache2/sites-available/000-default.conf' 

vhost_default = apache_conf_parser.ApacheConfParser(DEFAULT_VHOST) 

print vhost_default.nodes 
print vhost_default.nodes[0].body.nodes 

pprint.pprint( 
    { 
     i.name: [i.arguments for i in vhost_default.nodes[0].body.nodes] 
    } 
) 
+1

Udało mi się to uruchomić. Musiał używać wielu interaktywnych 'help()' i 'dir()' oraz '.__ dict__', ale to także jest rodzajem tego, co czyni Pythona świetnym. – ThorSummoner

Powiązane problemy