Thread View: pl.comp.lang.python
6 messages
6 total messages
Started by Yar3k
Wed, 15 Jan 2003 15:53
Szybki update plikow przez FTP
Author: Yar3k
Date: Wed, 15 Jan 2003 15:53
Date: Wed, 15 Jan 2003 15:53
6 lines
1091 bytes
1091 bytes
Musze napisać skrypt do szybiego update'u plików na innym serwerze. Z tego, co zauważyłem, standardowa biblioteka ftplib nie ma opcji zwracania listy plików z danego katalogu, ani czegos co by umozliwilo porownanie plikow. Musze wiec chyba polegac na serwerze ftp jak bede robil update? Chce aby wyznacznikiem identycznosci plikow byla nazwa + wielkosc (bez daty). Ktos z was robil cos takiego?
Re: Szybki update plikow przez FTP
Author: Dominik Kotowicz
Date: Wed, 15 Jan 2003 16:16
Date: Wed, 15 Jan 2003 16:16
40 lines
1791 bytes
1791 bytes
On Wed, 15 Jan 2003 16:53:26 +0100, Yar3k
<programisci_listy@muratorDOTcom.pl> wrote:
>Musze napisać skrypt do szybiego update'u plików na innym serwerze. Z
>tego, co zauważyłem, standardowa biblioteka ftplib nie ma opcji
>zwracania listy plików z danego katalogu, ani czegos co by umozliwilo
>porownanie plikow. Musze wiec chyba polegac na serwerze ftp jak bede
>robil update? Chce aby wyznacznikiem identycznosci plikow byla nazwa +
>wielkosc (bez daty). Ktos z was robil cos takiego?
a to:
from ftplib import FTP
from ftplib import error_temp
from ftplib import error_perm
try:
ftp=FTP("jakis server")
ftp.login('jakis user','jakies haslo')
# opcjonalnie wejscie do katalogu
ftp.cwd('jakis katalog')
listing = [ ]
ftp.retrlines("LIST",listing.append)
execpt (error_temp,error_perm), d:
print d
i dalej już sobie parsujesz "listing"
Pozdrawiam
--
Dominik Kotowicz
dkoto at poczta dot onet dot pl
dkoto@jabber.gda.pl
Re: Szybki update plikow przez FTP
Author: Yar3k
Date: Wed, 15 Jan 2003 16:23
Date: Wed, 15 Jan 2003 16:23
12 lines
1236 bytes
1236 bytes
On Wed, 15 Jan 2003 17:16:06 +0100, Dominik Kotowicz
<dkoto.nie@spamuj.poczta.onet.pl> wrote:
> ftp.retrlines("LIST",listing.append)
>execpt (error_temp,error_perm), d:
>
>i dalej już sobie parsujesz "listing"
Nie zauważyłem, że retrlines() ma opcjonalny parametr zmiennej do
której można wkładać listę plików. Mam do przetworzenia 16 tys.
plików. Myślałem że jest coś szybszego. Ale niech będzie i tak.
Dzięki.
Re: Szybki update plikow przez FTP
Author: Jarek Zgoda
Date: Wed, 15 Jan 2003 16:53
Date: Wed, 15 Jan 2003 16:53
14 lines
1543 bytes
1543 bytes
Yar3k <programisci_listy@muratorDOTcom.pl> pisze: > Nie zauważyłem, że retrlines() ma opcjonalny parametr zmiennej do > której można wkładać listę plików. Mam do przetworzenia 16 tys. > plików. Myślałem że jest coś szybszego. Ale niech będzie i tak. Szybszego? Nie bardzo rozumiem, jak sobie wyobrażasz "coś szybszego"? W specyfikacji protokołu FTP najszybszym sposobem uzyskania listy pozycji w bieżącym katalogu jest polecenie LIST. Najszybszym, bo jedynym. -- Jarek Zgoda http://www.zgoda.biz/ jabber:jarek@jabberpl.org|ICQ:178306476|GG:3422968|Tlen:jzgoda
Re: Szybki update plikow przez FTP
Author: Yar3k
Date: Thu, 16 Jan 2003 15:49
Date: Thu, 16 Jan 2003 15:49
7 lines
1220 bytes
1220 bytes
On Wed, 15 Jan 2003 16:53:14 +0000 (UTC), Jarek Zgoda <jzgoda@usun.gazeta.pl> wrote: >Szybszego? Nie bardzo rozumiem, jak sobie wyobrażasz "coś szybszego"? Ano to, że odczyt tego samego katalogu za pomocą np. Total Commandera trwa 13 sekund, a za pomocą Pythona: 43 sekundy.
Re: Szybki update plikow przez FTP
Author: Jarek Zgoda
Date: Thu, 16 Jan 2003 20:11
Date: Thu, 16 Jan 2003 20:11
16 lines
1610 bytes
1610 bytes
Yar3k <programisci_listy@muratorDOTcom.pl> pisze: >>Szybszego? Nie bardzo rozumiem, jak sobie wyobrażasz "coś szybszego"? > > Ano to, że odczyt tego samego katalogu za pomocą np. Total Commandera > trwa 13 sekund, a za pomocą Pythona: 43 sekundy. Zrób to samo w Delphi pprzy użyciu Indy, potem to samo przy użyciu ICS. Widzisz różnicę? Jeżeli tak, to popatrz w kod implementacji obsługi gniazdek. Dla informacji - na liuksie to działa szybciej. -- Jarek Zgoda http://www.zgoda.biz/ jabber:jarek@jabberpl.org|ICQ:178306476|GG:3422968|Tlen:jzgoda
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