Latest posts on Очистка корзины в почте topichttp://python.su/forum/topic/34934/2018-03-15T07:30:40+02:00Общий :: Python для новичков :: Очистка корзины в почте
2018-03-15T07:30:40+02:00chtozor190542<blockquote><em>papuas</em><br/>видимо вы не в том месте строку вставляете</blockquote>Ну вот мой код для ‘inbox’, который помечает письма в папке инбокс как удаленные и перемещает их в корзину.<br/><div class="code"><pre> <span class="c1"># -*- coding: utf-8 -*-</span>
<span class="kn">import</span> <span class="nn">imaplib</span>
<span class="kn">import</span> <span class="nn">time</span>
<span class="n">f</span> <span class="o">=</span> <span class="nb">open</span><span class="p">(</span><span class="sa">r</span><span class="s1">'C:\Users\admin\Desktop\удаление писем\myfile.txt'</span><span class="p">)</span>
<span class="n">line</span> <span class="o">=</span> <span class="n">f</span><span class="o">.</span><span class="n">readlines</span><span class="p">()</span>
<span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="mi">30</span><span class="p">):</span>
<span class="n">mail</span> <span class="o">=</span> <span class="n">imaplib</span><span class="o">.</span><span class="n">IMAP4_SSL</span><span class="p">(</span><span class="s1">'imap.mail.ru'</span><span class="p">)</span>
<span class="n">mail_info</span> <span class="o">=</span> <span class="n">line</span><span class="p">[</span><span class="n">i</span><span class="p">]</span><span class="o">.</span><span class="n">split</span><span class="p">(</span><span class="s1">':'</span><span class="p">)</span>
<span class="n">mail_login</span> <span class="o">=</span> <span class="n">mail_info</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span>
<span class="n">mail_pass</span> <span class="o">=</span> <span class="n">mail_info</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span>
<span class="k">print</span><span class="p">(</span><span class="n">mail_login</span><span class="p">)</span>
<span class="k">print</span><span class="p">(</span><span class="n">mail_pass</span><span class="p">)</span>
<span class="n">mail</span><span class="o">.</span><span class="n">login</span><span class="p">(</span><span class="n">mail_login</span><span class="p">,</span> <span class="n">mail_pass</span><span class="p">)</span>
<span class="n">mail</span><span class="o">.</span><span class="n">list</span><span class="p">()</span>
<span class="c1"># Выводит список папок в почтовом ящике.</span>
<span class="n">mail</span><span class="o">.</span><span class="n">select</span><span class="p">(</span><span class="s2">"inbox"</span><span class="p">)</span> <span class="c1"># Подключаемся к папке "входящие".</span>
<span class="n">result</span><span class="p">,</span> <span class="n">data</span> <span class="o">=</span> <span class="n">mail</span><span class="o">.</span><span class="n">search</span><span class="p">(</span><span class="bp">None</span><span class="p">,</span> <span class="s2">"ALL"</span><span class="p">)</span>
<span class="n">ids</span><span class="o">=</span> <span class="n">data</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="c1"># Получаем сроку номеров писем</span>
<span class="n">id_list</span> <span class="o">=</span> <span class="n">ids</span><span class="o">.</span><span class="n">split</span><span class="p">()</span> <span class="c1"># Разделяем ID писем</span>
<span class="n">latest_email_id</span> <span class="o">=</span> <span class="n">id_list</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span> <span class="c1"># Берем последний ID</span>
<span class="n">latest_email_id2</span> <span class="o">=</span> <span class="n">id_list</span><span class="p">[</span><span class="o">-</span><span class="mi">2</span><span class="p">]</span> <span class="c1"># Берем последний ID-1</span>
<span class="n">latest_email_id3</span> <span class="o">=</span> <span class="n">id_list</span><span class="p">[</span><span class="o">-</span><span class="mi">3</span><span class="p">]</span> <span class="c1"># Берем последний ID-2</span>
<span class="n">latest_email_id4</span> <span class="o">=</span> <span class="n">id_list</span><span class="p">[</span><span class="o">-</span><span class="mi">4</span><span class="p">]</span> <span class="c1"># Берем последний ID-3</span>
<span class="n">latest_email_id5</span> <span class="o">=</span> <span class="n">id_list</span><span class="p">[</span><span class="o">-</span><span class="mi">5</span><span class="p">]</span> <span class="c1"># Берем последний ID-4</span>
<span class="n">latest_email_id6</span> <span class="o">=</span> <span class="n">id_list</span><span class="p">[</span><span class="o">-</span><span class="mi">6</span><span class="p">]</span> <span class="c1"># Берем последний ID-5</span>
<span class="n">mail</span><span class="o">.</span><span class="n">store</span><span class="p">(</span><span class="n">latest_email_id</span><span class="p">,</span> <span class="s1">'+FLAGS'</span><span class="p">,</span> <span class="s1">'</span><span class="se">\\</span><span class="s1">Deleted'</span><span class="p">)</span>
<span class="n">mail</span><span class="o">.</span><span class="n">store</span><span class="p">(</span><span class="n">latest_email_id2</span><span class="p">,</span> <span class="s1">'+FLAGS'</span><span class="p">,</span> <span class="s1">'</span><span class="se">\\</span><span class="s1">Deleted'</span><span class="p">)</span>
<span class="n">mail</span><span class="o">.</span><span class="n">store</span><span class="p">(</span><span class="n">latest_email_id3</span><span class="p">,</span> <span class="s1">'+FLAGS'</span><span class="p">,</span> <span class="s1">'</span><span class="se">\\</span><span class="s1">Deleted'</span><span class="p">)</span>
<span class="n">mail</span><span class="o">.</span><span class="n">store</span><span class="p">(</span><span class="n">latest_email_id4</span><span class="p">,</span> <span class="s1">'+FLAGS'</span><span class="p">,</span> <span class="s1">'</span><span class="se">\\</span><span class="s1">Deleted'</span><span class="p">)</span>
<span class="n">mail</span><span class="o">.</span><span class="n">store</span><span class="p">(</span><span class="n">latest_email_id5</span><span class="p">,</span> <span class="s1">'+FLAGS'</span><span class="p">,</span> <span class="s1">'</span><span class="se">\\</span><span class="s1">Deleted'</span><span class="p">)</span>
<span class="n">mail</span><span class="o">.</span><span class="n">store</span><span class="p">(</span><span class="n">latest_email_id6</span><span class="p">,</span> <span class="s1">'+FLAGS'</span><span class="p">,</span> <span class="s1">'</span><span class="se">\\</span><span class="s1">Deleted'</span><span class="p">)</span>
<span class="n">mail</span><span class="o">.</span><span class="n">expunge</span><span class="p">()</span>
<span class="n">mail</span><span class="o">.</span><span class="n">logout</span><span class="p">()</span>
<span class="k">print</span><span class="p">(</span><span class="s1">'задержка 10 сек'</span><span class="p">)</span>
<span class="n">time</span><span class="o">.</span><span class="n">sleep</span><span class="p">(</span><span class="mi">10</span><span class="p">)</span>
</pre></div>Подскажите пожалуйста, что мне тут изменить, чтобы удалялись письма из корзины?
Общий :: Python для новичков :: Очистка корзины в почте
2018-03-14T12:25:39+02:00papuas190508видимо вы не в том месте строку вставляете
Общий :: Python для новичков :: Очистка корзины в почте
2018-03-14T07:54:47+02:00chtozor190501<blockquote><em>papuas</em><br/>Извиняйте, они недавно эту лавочку прикрыли. Тогда так собственно, ничего нового.</blockquote>да, я так пробовал. Единственное, если вставляю в строку <br/><div class="code"><pre> <span class="n">m</span><span class="o">.</span><span class="n">select</span><span class="p">(</span><span class="n">folder</span><span class="p">)</span> <span class="c1"># select all trash</span>
</pre></div>Вместо folder - ‘trash’, то вылетает ошибка<br/><div class="code"><pre> <span class="n">Traceback</span> <span class="p">(</span><span class="n">most</span> <span class="n">recent</span> <span class="n">call</span> <span class="n">last</span><span class="p">):</span>
<span class="n">File</span> <span class="s2">"C:/Users/admin/PycharmProjects/vrazrez/очиста корзины.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">25</span><span class="p">,</span> <span class="ow">in</span> <span class="o"><</span><span class="n">module</span><span class="o">></span>
<span class="n">mail</span><span class="o">.</span><span class="n">store</span><span class="p">(</span><span class="s2">"1:*"</span><span class="p">,</span> <span class="s1">'+FLAGS'</span><span class="p">,</span> <span class="s1">'</span><span class="se">\\</span><span class="s1">Deleted'</span><span class="p">)</span> <span class="c1"># Flag all Trash as Deleted</span>
<span class="n">File</span> <span class="s2">"C:\Users</span><span class="se">\a</span><span class="s2">dmin\AppData\Local\Programs\Python\Python36-32\lib\imaplib.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">835</span><span class="p">,</span> <span class="ow">in</span> <span class="n">store</span>
<span class="n">typ</span><span class="p">,</span> <span class="n">dat</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_simple_command</span><span class="p">(</span><span class="s1">'STORE'</span><span class="p">,</span> <span class="n">message_set</span><span class="p">,</span> <span class="n">command</span><span class="p">,</span> <span class="n">flags</span><span class="p">)</span>
<span class="n">File</span> <span class="s2">"C:\Users</span><span class="se">\a</span><span class="s2">dmin\AppData\Local\Programs\Python\Python36-32\lib\imaplib.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">1191</span><span class="p">,</span> <span class="ow">in</span> <span class="n">_simple_command</span>
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_command_complete</span><span class="p">(</span><span class="n">name</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_command</span><span class="p">(</span><span class="n">name</span><span class="p">,</span> <span class="o">*</span><span class="n">args</span><span class="p">))</span>
<span class="n">File</span> <span class="s2">"C:\Users</span><span class="se">\a</span><span class="s2">dmin\AppData\Local\Programs\Python\Python36-32\lib\imaplib.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">939</span><span class="p">,</span> <span class="ow">in</span> <span class="n">_command</span>
<span class="s1">', '</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">Commands</span><span class="p">[</span><span class="n">name</span><span class="p">])))</span>
<span class="n">imaplib</span><span class="o">.</span><span class="n">error</span><span class="p">:</span> <span class="n">command</span> <span class="n">STORE</span> <span class="n">illegal</span> <span class="ow">in</span> <span class="n">state</span> <span class="n">AUTH</span><span class="p">,</span> <span class="n">only</span> <span class="n">allowed</span> <span class="ow">in</span> <span class="n">states</span> <span class="n">SELECTED</span>
</pre></div>
Общий :: Python для новичков :: Очистка корзины в почте
2018-03-14T00:29:52+02:00papuas190498Извиняйте, они недавно эту лавочку прикрыли. <br/>Тогда так<br/>собственно, ничего нового. <br/><br/><div class="code"><pre> <span class="k">def</span> <span class="nf">empty_folder</span><span class="p">(</span><span class="n">m</span><span class="p">,</span> <span class="n">folder</span><span class="p">,</span> <span class="n">do_expunge</span><span class="o">=</span><span class="bp">True</span><span class="p">):</span>
<span class="k">print</span><span class="p">(</span><span class="s2">"- Empty '{0}' & Expunge all mail..."</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">folder</span><span class="p">))</span>
<span class="n">m</span><span class="o">.</span><span class="n">select</span><span class="p">(</span><span class="n">folder</span><span class="p">)</span> <span class="c1"># select all trash</span>
<span class="n">m</span><span class="o">.</span><span class="n">store</span><span class="p">(</span><span class="s2">"1:*"</span><span class="p">,</span> <span class="s1">'+FLAGS'</span><span class="p">,</span> <span class="s1">'</span><span class="se">\\</span><span class="s1">Deleted'</span><span class="p">)</span> <span class="c1"># Flag all Trash as Deleted</span>
<span class="k">if</span> <span class="n">do_expunge</span><span class="p">:</span>
<span class="n">m</span><span class="o">.</span><span class="n">expunge</span><span class="p">()</span> <span class="c1"># not need if auto-expunge enabled</span>
<span class="k">else</span><span class="p">:</span>
<span class="k">print</span><span class="p">(</span><span class="s2">"Expunge was skipped."</span><span class="p">)</span>
<span class="k">return</span>
<span class="n">empty_folder</span><span class="p">(</span><span class="n">mail</span><span class="p">,</span> <span class="s1">'корзина'</span><span class="p">)</span>
</pre></div>
Общий :: Python для новичков :: Очистка корзины в почте
2018-03-13T09:14:24+02:00chtozor190459<blockquote><em>papuas</em><br/>просто в настройках mail укажите удалять при выходе Ж)</blockquote>А можно немного подробнее, как это сделать?
Общий :: Python для новичков :: Очистка корзины в почте
2018-03-12T19:34:14+02:00papuas190447просто в настройках mail укажите удалять при выходе Ж)
Общий :: Python для новичков :: Очистка корзины в почте
2018-03-12T16:52:31+02:00chtozor190443Добрый день! У меня такой вопрос. Подключаюсь к почте mail.ru через imap, дальше нужные мне письма удаляю строкой:<br/><div class="code"><pre> <span class="n">mail</span><span class="o">.</span><span class="n">store</span><span class="p">(</span><span class="n">latest_email_id</span><span class="p">,</span> <span class="s1">'+FLAGS'</span><span class="p">,</span> <span class="s1">'</span><span class="se">\\</span><span class="s1">Deleted'</span><span class="p">)</span>
</pre></div>Вот только они переносятся в корзину, а не полностью удаляются. Вопрос в том, как удалить их из корзины?