Nowe posty

Autor Wątek: Sprawdzanie wersji pliku (curl'em?)  (Przeczytany 4511 razy)

kapio

  • Gość
Sprawdzanie wersji pliku (curl'em?)
« dnia: 2012-06-29, 16:43:53 »
Witam, mam pewien problem chce zrobić skrypt który ściąga dany plik dajmy na to WordPress i na dzień dzisiejszy jest to wersja 3.4.1 i link wygląda tak;
http://pl.wordpress.org/wordpress-3.4.1-pl_PL.zip
ale np. jutro może wyjść wersja 3.5.0 i muszę ręcznie to zmieniać w pliku .sh, a chciałbym otrzymać coś takiego;
{sprawdzenie wersji pliku http://pl.wordpress.org/wordpress-*.*.*-pl_PL.zip}
skrypt otrzymał wersję 3.5.0 więc
link=http://pl.wordpress.org/wordpress-3.5.0-pl_PL.zip
wget $link
I teraz nie wiem jak sprawdzić tą wersje próbowałem zmienić trochę ten kod
#!/bin/bash
curl http://www.wp.pl/ | grep -o -e 'http://www.wp.pl/.\\{1,50\\}\\jpg' > spis_plikow.txt
ale to nic nie dało. No i czy można to zrobić curlem czy może czegoś innego użyć?
Z góry dziękuje za jakąkolwiek pomoc.

Ksanderon

  • Gość
Sprawdzanie wersji pliku (curl'em?)
« Odpowiedź #1 dnia: 2012-06-29, 22:31:35 »
ja bym sobie to wyciągnął wyrażeniem regularnym w Pythonie a następnie pobrał przez urllib,requests lub pycurl.

edit:
Oczywiście, że w bashu się da- tylko ja go po prostu nie lubię.

jk33

  • Gość
Sprawdzanie wersji pliku (curl'em?)
« Odpowiedź #2 dnia: 2012-06-29, 22:58:03 »
Jesteś świadomy że istnieje
http://pl.wordpress.org/latest-pl_PL.zip
który przekierowuje na właściwą wersję?

kapio

  • Gość
Sprawdzanie wersji pliku (curl'em?)
« Odpowiedź #3 dnia: 2012-06-29, 23:03:54 »
Cytat: jk33
Jesteś świadomy że istnieje
http://pl.wordpress.org/latest-pl_PL.zip
który przekierowuje na właściwą wersję?
Nie i dziękuje bardzo za ten link, ale to tylko przykład. Do tego dochodzą inne skrypty typu MyBB, phpBB3, joomla, drupal, a dla wszystkich chyba coś takiego nie istnieje? A co do pythona to nie znam w bashu tego nie da się zrobić?

Offline vanhelzing

  • Users
  • Prawie jak Guru
  • ****
  • Wiadomości: 314
    • Zobacz profil
Sprawdzanie wersji pliku (curl'em?)
« Odpowiedź #4 dnia: 2012-06-30, 13:29:16 »
curl http://pl.wordpress.org/ 2>/dev/null | grep -o -e "http:[^\\"]*\\.zip"
curl http://www.wp.pl/ 2>/dev/null | grep -o -e "http:[^\\"]*\\.jpg"
...
Większość stron posiada API służące do pobrania najnowszej wersji oprogramowania, albo oprogramowanie umieszczone jest w serwisach, które udostępniają to automatycznie. To jest najlepsza i najbezpieczniejsza metoda i może warto się tym zainteresować.

Jeżeli jednak chcesz filtrować strony, to byłoby Ci znacznie łatwiej, gdybyś wiedział jakiego wzorca szukasz i jak tworzy się wyrażenia regularne. Bez tego żadne narzędzie i żaden język programowania Ci nie pomogą.

Podany przez Ciebie przykład działa, ale nic nie znajduje, bo na stronie nie ma ciągów pasujących do wzorca.