🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.lang.python
6 messages
6 total messages Started by luky Wed, 26 Jan 2011 18:24
jaki serwer do takie zastosowania (import i parsowanie XML'i)
#27889
Author: luky
Date: Wed, 26 Jan 2011 18:24
23 lines
1730 bytes
Witam,
dopiero zaczynam przygodę z pythonem więc prosze o wyrozumiałość.
Mam potrzebe cyklicznie (co kilka minut) importować duże XML'e po 
http/https następnie zawartość tych XML'i wkładać do bazy danych 
PostgreSQL. XML'e chciałbym pobierać i parsować za pomocą Pythona i jego 
biblotek

mam więc kilka pytań:
-załóżmy że posiadam serwer dedykowany, jaki serwer na nim zainstalować 
dla pythonk'a aby ten cyklicznie sobie wykonywał porządane operacje, 
wiem że tak naprawde wystarczy cron+python ale w przyszłości chciałbym 
to rozwijać o np. zrobienie webservices, itd.
-jaka bilboteka do parsowania XML'i byłaby odpowiednia do powyższgo 
zastosowania (gdzieś czytam o simpleXML...)
-jakiś pomysł na pobieranie tych XML'i? a może jakoś da bezpośrednio je 
czytać (leżą one na innym serwerze oczywiście).


wszelkie rzeczy frameworki, linki itd jakimi powinienem się zaintresować 
do powyższego zastosowania mile widziane.

pozdrawiam
Luky
Re: jaki serwer do takie zastosowania (import i parsowanie XML'i)
#27890
Author: Michal
Date: Wed, 26 Jan 2011 19:56
1 lines
1011 bytes
A jak chcesz to pobierac po http? Ktora strona ma iniciojować operacje? Python ma wlasne biblioteki do parsowania xml(dom) w pakiecie. Nie musisz nic doinstalowywac.
Re: jaki serwer do takie zastosowania (import i parsowanie XML'i)
#27891
Author: luky
Date: Wed, 26 Jan 2011 22:26
11 lines
1575 bytes
Michal pisze:
> A jak chcesz to pobierac po http? Ktora strona ma iniciojować operacje? Python ma wlasne biblioteki do parsowania xml(dom) w pakiecie. Nie musisz nic doinstalowywac.

zakładamy że pod pewnym adresem mamy plik xml który cyklicznie 
odpytujemy.Spoko -  dotarłem do 
http://codespeak.net/lxml/parsing.html#iterparse-and-iterwalk myśle że 
to mi załatwia sprawe parsowania dużych plików, teraz myśle nad tym jak 
zrobić interface/web-service po jakimś protokole cross-platfom 
(json-rpc?) który bedzie zezwalał na operacje (czytanie, zapis, edycje) 
do mojej bazy do której wcześniej zaimportowałem XML'a (poszczególne 
dane z niego)
Re: jaki serwer do takie zastosowania (import i parsowanie XML'i)
#27892
Author: Szyk
Date: Fri, 28 Jan 2011 21:34
37 lines
2793 bytes
W dniu 2011-01-26 19:24, luky pisze:
> Witam,
> dopiero zaczynam przygodę z pythonem więc prosze o wyrozumiałość.
> Mam potrzebe cyklicznie (co kilka minut) importować duże XML'e po
> http/https następnie zawartość tych XML'i wkładać do bazy danych
> PostgreSQL. XML'e chciałbym pobierać i parsować za pomocą Pythona i jego
> biblotek
>
> mam więc kilka pytań:
> -załóżmy że posiadam serwer dedykowany, jaki serwer na nim zainstalować
> dla pythonk'a aby ten cyklicznie sobie wykonywał porządane operacje,
> wiem że tak naprawde wystarczy cron+python ale w przyszłości chciałbym
> to rozwijać o np. zrobienie webservices, itd.

Do samego ściągania nie potrzeba własnego serwera. Ściąganie i wrzucanie 
do bazi to jedno, a serwer www to drugie. Oba mogą latać na pythonie, 
ale nie muszą (mogą to być zupełnie inne języki a nawet kilka róznych 
jezyków).

> -jaka bilboteka do parsowania XML'i byłaby odpowiednia do powyższgo
> zastosowania (gdzieś czytam o simpleXML...)

Szczerze mówiąc, to do ściągania co parę minut dużych plików i do ich 
mielenia ja bym odradzał pythona, bo może okazać się zbyt wolny. Ale na 
upartego można to zrobić w pythonie. Ja kiedyś użyłem tego: 
http://www.crummy.com/software/BeautifulSoup/

> -jakiś pomysł na pobieranie tych XML'i? a może jakoś da bezpośrednio je
> czytać (leżą one na innym serwerze oczywiście).

Python ma wbudowanego klienta HTTP dokumentacja jest na stronie 
projektu. Czasem zdarzają się pliki asynchronicznie udostępniane (do 
pobierania skryptami JavaScript). W takim przypadku skutecznie użyłem 
asynchttp.py

Ja się tym bawiłem jeszcze starym Pythonem, dlatego podane przeze mnie 
narzędzia mogą być nie dostępne w Python v3.x.
Re: jaki serwer do takie zastosowania (import i parsowanie XML'i)
#27894
Author: rav
Date: Sat, 29 Jan 2011 13:19
12 lines
1827 bytes
> -jaka bilboteka do parsowania XML'i byłaby odpowiednia do powyższgo
> zastosowania (gdzieś czytam o simpleXML...)
Nie wiem jak wielkie pliki XML chcesz parsowac ale polecam sprawdzenie
ElementTree (a w szczegolnosci cElementTree) z biblioteki standardowej
Pythona.
http://www.doughellmann.com/PyMOTW/xml/etree/ElementTree/index.html#module-xml.etree.ElementTree

Bardzo przyjemna biblioteka zwlaszcza dla osoby zaczynajacej zabawe z
Pythonem.

Pozdrawiam,
Rafal
Re: jaki serwer do takie zastosowania (import i parsowanie XML'i)
#27893
Author: John Q Public
Date: Sat, 28 Sep 2013 21:32
15 lines
1523 bytes
Szyk <szyk100@o2.pl> wrote:
> Szczerze mówiąc, to do ściągania co parę minut dużych plików i do ich 
> mielenia ja bym odradzał pythona, bo może okazać się zbyt wolny. Ale na 
E? Zbyt wolny? lxml, libxml2, cElementTree
http://effbot.org/zone/celementtree.htm

> upartego można to zrobić w pythonie. Ja kiedyś użyłem tego: 
> http://www.crummy.com/software/BeautifulSoup/
BeautifulSoup nie służy do parsowania XMLi (chociaż oczywiście potrafi to robić).

-- 
_     _     _     _
 =-_-= =-=-= =-_-=  
=-=_=- J Q P -=_=-=
_=- -=_=-=-=_=- -=_ <xxx> mas w jape
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads