[Risolto] [Python] Eliminare messaggi inbox con mechanize
Inviato: martedì 9 ottobre 2012, 2:15
Ciao a tutti.
Come ormai si sarà capito, sto facendo uno script per gestire alcune funzioni della inbox senza doverlo fare manualmente.
Mi sono imbattuto nell'ennesimo problema al di fuori della mia portata.
Vorrei capire come eliminare determinati messaggi dalla casella:
Ho fatto alcune ricerche in rete, ma senza ottenere nulla di utile.
Per il momento, ho fatto il login in questo modo:
e il form utile allo scopo è il secondo di questa lista:
Quello che non riesco a fare (se ho capito cosa devo fare) è marcare tutti i messaggi in CheckboxControl, anche se in questo caso ne compare solo uno, marcare poi "delete_marked" in SelectControl, e quindi fare il submit.
... ma non ci riesco
Come al solito, grazie in anticipo per l'attenzione.
Ciao.
p.s.
Questa è la analoga form (con aggiunta finale di chiavi e valori di form.attrs), ma della cartella inbox, che contiene più messaggi:
Come ormai si sarà capito, sto facendo uno script per gestire alcune funzioni della inbox senza doverlo fare manualmente.
Mi sono imbattuto nell'ennesimo problema al di fuori della mia portata.
Vorrei capire come eliminare determinati messaggi dalla casella:
Codice: Seleziona tutto
http://forum.ubuntu-it.org/ucp.php?i=pm&folder=outbox
Per il momento, ho fatto il login in questo modo:
Codice: Seleziona tutto
>>> import mechanize
>>> br = mechanize.Browser()
>>> br.set_handle_robots(False)
>>> br.open("http://forum.ubuntu-it.org/ucp.php?i=pm&folder=outbox")
<response_seek_wrapper at 0x177b440 whose wrapped object = <closeable_response at 0x1776b90 whose fp = <socket._fileobject object at 0x1706cd0>>>
>>> for form in br.forms():
... if form.attrs['id'] == 'login':
... br.form = form
... break
...
>>> br['username'] = 'vaeVictis'
>>> br['password'] = 'password'
>>> br.submit()
<response_seek_wrapper at 0x177b3b0 whose wrapped object = <closeable_response at 0x1789908 whose fp = <socket._fileobject object at 0x178e150>>>
Codice: Seleziona tutto
>>> for form in br.forms():
... print form
...
<GET http://forum.ubuntu-it.org/search.php application/x-www-form-urlencoded
<TextControl(keywords=Cerca nel forum...)>>
<POST http://forum.ubuntu-it.org/ucp.php?i=pm&mode=view&action=view_folder&f=-2 application/x-www-form-urlencoded
<CheckboxControl(marked_msg_id[]=[193493])>
<SelectControl(export_option=[*CSV, CSV_EXCEL, XML])>
<SubmitControl(submit_export=Vai) (readonly)>
<SelectControl(mark_option=[*mark_important, delete_marked])>
<SubmitControl(submit_mark=Vai) (readonly)>
<SelectControl(st=[*0, 1, 7, 14, 30, 90, 180, 365])>
<SelectControl(sk=[*t, s])>
<SelectControl(sd=[a, *d])>
<SubmitControl(sort=Vai) (readonly)>
<HiddenControl(cur_folder_id=-2) (readonly)>>
... ma non ci riesco
Come al solito, grazie in anticipo per l'attenzione.
Ciao.
p.s.
Questa è la analoga form (con aggiunta finale di chiavi e valori di form.attrs), ma della cartella inbox, che contiene più messaggi:
Codice: Seleziona tutto
<POST http://forum.ubuntu-it.org/ucp.php?i=pm&mode=view&action=view_folder&f=0 application/x-www-form-urlencoded
<CheckboxControl(marked_msg_id[]=[194782, 194736, 194732, 194729, 194727, 194558, 194555, 194553, 194552, 194545, 194532, 194384, 194374, 194372, 194370, 194368, 194341, 194310, 194291, 194288, 194280, 194279, 194274, 194272, 194267, 194263, 194261, 194259, 194256, 194252])>
<SelectControl(export_option=[*CSV, CSV_EXCEL, XML])>
<SubmitControl(submit_export=Vai) (readonly)>
<SelectControl(mark_option=[*mark_important, delete_marked])>
<SubmitControl(submit_mark=Vai) (readonly)>
<SelectControl(st=[*0, 1, 7, 14, 30, 90, 180, 365])>
<SelectControl(sk=[a, *t, s])>
<SelectControl(sd=[a, *d])>
<SubmitControl(sort=Vai) (readonly)>
<HiddenControl(cur_folder_id=0) (readonly)>>
action : ./ucp.php?i=pm&mode=view&action=view_folder&f=-2
id : viewfolder
method : post