Wyświetlanie cytatów z serwisu bash.org.pl w konsoli

Ostatnio na IRC, nie pamiętam na jakim kanale, ktoś wkleił linka z bash'a, a inna osoba stwierdziła że nie może przeczytać cytatu z powodu braku X'ow. Oczywiście są tekstowe przeglądarki, ale na bash'u jest tyle reklam ze czasami cytat ginie w ich gąszczu, poza tym czasem nawet jak mamy X'y, możemy po prostu nie chcieć uruchamiać przeglądarki.

Napisałem więc prosty skrypt w pythonie do odczytywania cytatów z bash'a pod konsolą. Skrypt oprócz wyświetlania cytatu z konkretnego odnośnika może wyświetlać ostatnie, bądź najlepsze cytaty, ich ilość została ograniczona do jednej strony, żeby nie obciążać serwisu, poza tym czytanie większej ilości cytatów pod konsolą nie było by zbyt wygodne.

Aby dowiedzieć się jak korzystać ze skryptu wpisujemy:

python bashreader.py -h

Na koniec najważniejsze - źródła skryptu

MegiTeam - mówimy Twoim językiem

Komentarze do notki Wyświetlanie cytatów z serwisu bash.org.pl w konsoli

  1. Winhelp powiedział(a):

    http://bash.org.pl/text

    Z tym, że to sporo waży ;)

  2. D4rky powiedział(a):

    nie prościej w BASHu? :P

  3. jam łasica powiedział(a):

    chyba łatwiej byłoby przeparsować RSS (XML)..

  4. virhilo powiedział(a):

    @jam łasica: parsowanie dosc proste:) pozatym tu chodzilo o czytanie wpisu spod danego url'a, czytanie ostatnich i najlepszych to faki dodatek;)

  5. 3ED powiedział(a):

    virhilo: imho python jest dobry jak coś trzeba uruchomić bardzo rzadko i do tego działa to jako okno/daemon.. Szczególnie niektóre pybiblioteki ładują się okropnie długo, a sam program wręcz grzeszy zajętością zasobów. Prosty przykład tego że się da nawet w bashu: http://pastebin.pl/6558 :)

  6. Dodek powiedział(a):

    3ED: niezłe :)

  7. virhilo powiedział(a):

    3ED niezle:) ale u mnie jest normalny parser nie regexpy wiec bardziej elegancko:)

  8. Dodek powiedział(a):

    w ogólnym przypadku - tak, w tym szczególnym - overkill.

  9. 3ED powiedział(a):

    Ja sed-em po prostu wyrzuciłem tylko zbędny html (reklamy, menu, komenty, itp), a html2text wczytuje mi pozostały kod..

  10. zwierzak powiedział(a):

    bq.. __copyright__='Copyright 2008 Łukasz Fidosz'

    p.. Przecież już mamy rok 2009 ;)

  11. zwierzak powiedział(a):

    Włącz texile ;)

  12. virhilo powiedział(a):

    @zwierzak: hehe-ano, w sumie to skopiowalem to z jakiegos mojego innego skryptu i przeoczylem date;) (juz poprawione)
    texile tez juz jest:)

  13. zwierzak powiedział(a):

    Ja też na ogół robię Ctrl+C Ctrl+V dla stałych szablonów. Chyba w końcu powinienem wziąć naszykować sobie jakiś ogólny plik, a nie kopiować z plików.

  14. virhilo powiedział(a):

    albo jakis sktypt dodajacy to i licencje:)

  15. zwierzak powiedział(a):

    Za dużo pisania, Ctrl+C Ctrl+V szybsze ;)

    Poza tym o takich rzeczach to powinno pamiętać IDE.

  16. virhilo powiedział(a):

    Hmm…. z pythonowych ide mam i eric’a i plugin do eclipse a itak pisze w vim’ie;)

  17. Dodek powiedział(a):

    „Poza tym o takich rzeczach to powinno pamiętać IDE.”
    skeleton-mode!

    http://www.emacswiki.org/cgi-bin/wiki/SkeletonMode

  18. mrk powiedział(a):

    Drobne uwagi do kodu:
    1. Dlaczego jawnie porównujesz zmienną logiczną z True? Wystarczy przecież:
    if self.save_text:

    2. Zamiast pętli po atrybutach i porównywania każdego z osobna użyj operatora in: (‘class’, ‘quote’) in attrs

    3. W funkcji prt zamiast tego potworka z pętlą możesz użyć:
    print ‘\n\n’.join(parser.quotes[:count]), usuwając niepotrzebny \n z quotes.append

    To chyba wszystko :)

  19. virhilo powiedział(a):

    @mrk: Dzieki za uwagi:)
    Ad. 1. nie wiem czemu ale odruchowo to jakos robie i przeoczylo mi sie to

    Ad. 2. na poczatku to jakos inaczej zrobilem potem uproscilem i nie zauwazylem ze poprzednia petla jest juz niepotrzebna;]

    Ad. 3. no-tak jest bardziej ‘in python way’;)

    Wszystko poprawione:)

  20. grizz powiedział(a):

    Marudzą :D

    Najlepiej pisać w tym w czym się dobrze czujemy ;)

W górę » Strona główna

Dodaj komentarz: