Article View: pl.comp.lang.python
Article #28307Re: Pytania początkującego cz. 3
From: Mariusz Kruk
Date: Tue, 15 Nov 2011 07:44
Date: Tue, 15 Nov 2011 07:44
66 lines
3379 bytes
3379 bytes
epsilon$ while read LINE; do echo \>"$LINE"; done < "hubert depesz lubaczewski"
>1. najpierw pytanie praktyczne. parsuję maila przy pomocy klasy/modułu
>email.
>dostałem maila, wyciągam z niego przez mail.get() zawartość nagłówka.
>ale nagłółek jest mime-encodowany.
>znalazłem, że mogę go sobie przez email.header.decode_header()
>zdekodować, ale dostaję z tego listę tupli, np. takich:
>[('Re: Instalacja PostgreSQL / post\xeapy', 'iso-8859-2')]
>
>jak mogę to zamienić na normalny string?
email.charset.Charset.header_encode?
>2. jak można się połapać w dokumentacji? to pytanie takie bardziej
>ogólne, ale już tłumaczę.
>znalazłem moduł email.
>w docach do niego znalazłem informację o funkcji message_from_file
>fajnie. ale nie jest napisane co ona zwraca (obiekt jakiejś klasy, ale
>jakiej?). no nic. na sieci podpowiedzi, żeby zrobić print repr(obiekt)
>ok. dowiedziałem się, że jest to instancja email.message.Message
>fajnie.
>
>odpaliłem pythona, zrobiłem import email (taki sam jak mam w swoim
>programie), help( email.message.Message ) - i nie działa.
>znowu - na sieci podpowiedzieli, że muszę zrobić: import email.message,
>ale podobno nie jest regułą, że obcina się ostatni element z nazwy.
>
>tu pytanie: czy jest jakieś miejsce/metoda/algorytm/cokolwiek dzięki
>któremu mając "w ręku" obiekt mogę przeczytać do niego manuala - tzn. do
>jego klasy, bez zgadywania co muszę zaimportować?
#v+
$ ipython
Python 2.6.7 (r267:88850, Aug 3 2011, 15:19:01)
Type "copyright", "credits" or "license" for more information.
IPython 0.10.2 -- An enhanced Interactive Python.
? -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help -> Python's own help system.
object? -> Details about 'object'. ?object also works, ?? prints more.
In [1]: import email
In [2]: email.message_from_file?
Type: function
Base Class: <type 'function'>
String Form: <function message_from_file at 0x912d8b4>
Namespace: Interactive
File: /usr/lib/python2.6/email/__init__.py
Definition: email.message_from_file(fp, *args, **kws)
Docstring:
Read a file and parse its contents into a Message object model.
Optional _class and strict are passed to the Parser constructor.
#v-
O to chodzi?
--
\------------------------/
| Kruk@epsilon.eu.org |
| http://epsilon.eu.org/ |
/------------------------\
Technical Details
Message-ID:
<slrnjc463f.9rq.Mariusz.Kruk@epsilon.rdc.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!news.onet.pl!.POSTED!epsilon.rdc.pl!not-for-mailReferences:
<9gr8p8-v4r.ln1@depesz.com>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!news.onet.pl!.POSTED!epsilon.rdc.pl!not-for-mail From: Mariusz Kruk <Mariusz.Kruk@epsilon.eu.org> Newsgroups: pl.comp.lang.python Subject: Re: Pytania początkującego cz. 3 Date: Tue, 15 Nov 2011 08:44:47 +0100 Organization: Denied! Lines: 66 Message-ID: <slrnjc463f.9rq.Mariusz.Kruk@epsilon.rdc.pl> References: <9gr8p8-v4r.ln1@depesz.com> NNTP-Posting-Host: epsilon.rdc.pl Mime-Version: 1.0 X-Trace: news.onet.pl 1321343101 3374 77.252.106.53 (15 Nov 2011 07:45:01 GMT) X-Complaints-To: niusy@onet.pl NNTP-Posting-Date: Tue, 15 Nov 2011 07:45:01 +0000 (UTC) User-Agent: slrn/pre1.0.0-18 (Linux) Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit