[Python] вопрос/ответ.

Discussion in 'Python' started by De-visible, 21 Jan 2009.

  1. login999

    login999 Elder - Старейшина

    Joined:
    12 Jun 2008
    Messages:
    491
    Likes Received:
    280
    Reputations:
    92
    Обьявление tuple(в принципе я на всякий случай это делаю во всех последовательностях кроме dict) с размером в одно значение должно заканчиваться запятой, это кстати в туториале есть.
     
    1 person likes this.
  2. login999

    login999 Elder - Старейшина

    Joined:
    12 Jun 2008
    Messages:
    491
    Likes Received:
    280
    Reputations:
    92
    На ActiveState они свою сборку релизят немного позже основной ветки, и это если чессн не всегда радует, ибо иногда правят такие баги, которые кумарят чуть ли не по полгода. Возможность того что он не будет пахать крайне мала. А вот на активстейт (http://www.activestate.com/activepython/downloads/) есть ссылка на даунлоад и версии 2.5 (в самом низу).
     
  3. scrat

    scrat кодер

    Joined:
    8 Apr 2007
    Messages:
    625
    Likes Received:
    541
    Reputations:
    3
    подскажите какую-нибудь библиотеку для шифрования или секьюрное key-value хранилище
     
  4. XPYMGT

    XPYMGT New Member

    Joined:
    11 Apr 2009
    Messages:
    34
    Likes Received:
    3
    Reputations:
    0
    А я себе сегодня питон 3.1.2 скачал там можно русские имена переменным, функциям, классам давать, а то уже заебло названия придумывать на english...
     
    1 person likes this.
  5. login999

    login999 Elder - Старейшина

    Joined:
    12 Jun 2008
    Messages:
    491
    Likes Received:
    280
    Reputations:
    92
    Так чтоб по красивому то Ж полная :(.
    Сам вот озадачился шифрованием.
    Pure Python есть только AES(непонятно как реализовано вообще, походу кто-то херней страдал), также есть pyDes(triple DES есть).

    Не PurePython :
    Есть PyCrypto(где-то отрыл инсталлер под вынь, но инсталлер походу кривой, ибо не завелось, компилить скорее всего будут ебли без MinGW(не прет)), ncrypt(под вынь нормально завелся), еще есть KeyCzar (чето от лукавого(от гугла тобишь)), походу есть еще чего-то, но заебался уже после всего этого.

    Еще к SQLAlchemy есть приблуда по имени Elixir, когда копошился в сорцах то натыкался на (я так понял) прозрачное шифрование инфы в БД (не помню точно где включается и что хочет для работы, но шифрует вроде AES). Короче из реально переносимого между платформами и вменяемого я так понял есть только pyDes, для моих целей его в принципе хватит, а ты для себя решай )))

    П.С. Морду для твоего твиттер-клиента можно нарисовать и на WxPython, но будет не так карасиво как на КоТэ, а так то выбор мордо-фреймворков не особо шикарен - Wxpython и Qt, также есть Tkinter и pyFLTK, но мну их вообще сразу отмел из-за ... бла-бла-бла.
     
  6. AVIRA

    AVIRA New Member

    Joined:
    12 Aug 2009
    Messages:
    7
    Likes Received:
    0
    Reputations:
    0
    кто знает что означает эта ошибка на мобильном питоне 9.1 symbian и ее решение:
    Traceback (most recent call last):
    File "C:\private\f0eeaa0f\default.py", line 16, in ?
    import mobiserf
    File "c:\resource\site.py", line 97, in platsec_import
    return _original_import(name, globals, locals, fromlist)
    File "E:\\\System\Apps\MOBISERF\MOBISERF.py", line 55001, in ?
    File "c:\resource\site.py", line 97, in platsec_import
    return _original_import(name, globals, locals, fromlist)
    SymbianError: [Errno -1] KErrNotFound
     
  7. XPYMGT

    XPYMGT New Member

    Joined:
    11 Apr 2009
    Messages:
    34
    Likes Received:
    3
    Reputations:
    0
    У автора спроси.
     
  8. Ice_VeNOm

    Ice_VeNOm Member

    Joined:
    5 Sep 2009
    Messages:
    36
    Likes Received:
    9
    Reputations:
    0
    Многопоточность python 3.1
    что почитать посоветуете?
     
  9. taxpayer

    taxpayer Member

    Joined:
    17 Jan 2010
    Messages:
    31
    Likes Received:
    7
    Reputations:
    3
    документацию
     
    1 person likes this.
  10. XPYMGT

    XPYMGT New Member

    Joined:
    11 Apr 2009
    Messages:
    34
    Likes Received:
    3
    Reputations:
    0
    Как отправить письмо в utf-8 (Python 3.1)
    Code:
    import smtplib
    from email.mime.text import MIMEText
    хост = "smtp.mail.ru"
    пользователь = "mishustin.sergei"
    пароль = "*** вам а не пароль"
    от_кого = "[email protected]"
    адресаты = ["[email protected]"]
    заголовок = "Тест"
    текст_сообщения = "Проверка"
    соо = MIMEText(текст_сообщения, 'plain', 'utf-8')
    соо['From'] = от_кого
    соо['To'] = адресаты[0]
    соо['Subject'] = заголовок
    обьект = smtplib.SMTP(хост, 2525)
    обьект.login(пользователь, пароль)
    обьект.sendmail(от_кого, кому, соо.as_string())
    обьект.quit()
    
    Приводит к ошибке:

    Code:
    Traceback (most recent call last):
      File "D:\Program Files\Python31\lib\email\message.py", line 269, in set_charset
        cte(self)
    TypeError: 'str' object is not callable
    
    During handling of the above exception, another exception occurred:
    
    Traceback (most recent call last):
      File "D:\Program Files\Python27\mail.ru\src\mail.py", line 10, in <module>
        соо = MIMEText(текст_сообщения, 'plain', 'utf-8')
      File "D:\Program Files\Python31\lib\email\mime\text.py", line 30, in __init__
        self.set_payload(_text, _charset)
      File "D:\Program Files\Python31\lib\email\message.py", line 234, in set_payload
        self.set_charset(charset)
      File "D:\Program Files\Python31\lib\email\message.py", line 271, in set_charset
        self._payload = charset.body_encode(self._payload)
      File "D:\Program Files\Python31\lib\email\charset.py", line 380, in body_encode
        return email.base64mime.body_encode(string)
      File "D:\Program Files\Python31\lib\email\base64mime.py", line 94, in body_encode
        enc = b2a_base64(s[i:i + max_unencoded]).decode("ascii")
    TypeError: must be bytes or buffer, not str
    
     
  11. login999

    login999 Elder - Старейшина

    Joined:
    12 Jun 2008
    Messages:
    491
    Likes Received:
    280
    Reputations:
    92
    Попробуй так :
    Code:
    текст_сообщения = "Проверка".encode("UTF-8")
    
    В 3.1 ИМХО только неразберихи добавлось с этим bytes типом данных. Фактически он обозначает собой str из 2.6 в определенной кодировке. То же что обьявлялось в 2.6 как string = u"Вася" в 3.1 обьявляется как строка = "Вася", т.е. то что ты воспринимаешь как str из 2.6 в 3.1 фактически является unicode из 2.6. По крайней мере я это так понял.
     
  12. XPYMGT

    XPYMGT New Member

    Joined:
    11 Apr 2009
    Messages:
    34
    Likes Received:
    3
    Reputations:
    0
    да не работает это,, с утф-8 по ходу вообще не работает, сделал всё по старинке на python 2.7a

    Code:
    #-*- coding: utf-8 -*-
    import smtplib
    server = "smtp.mail.ru"
    user = "mishustin.sergei"
    password = "*****"
    FROM = "[email protected]"
    TO = "[email protected]"
    subject = u"Тест".encode("windows-1251")
    text = u"Проверка".encode("windows-1251")
    msg = "From: %s\r\nTo: %s\r\nSubject: %s\r\n\r\n%s" %(FROM, TO, subject, text)
    print(msg)
    s = smtplib.SMTP(server, 2525)
    s.login(user, password)
    s.sendmail(FROM, TO, msg)
    s.quit()
    
    Какой интервал должен быть для рассылки слышал что у маила раз в 1 минуту, и не более n писем, чему это n равно?
     
  13. login999

    login999 Elder - Старейшина

    Joined:
    12 Jun 2008
    Messages:
    491
    Likes Received:
    280
    Reputations:
    92
    Об этом n не знаю, а вот smtp у них подтупливает, это да.
     
  14. XPYMGT

    XPYMGT New Member

    Joined:
    11 Apr 2009
    Messages:
    34
    Likes Received:
    3
    Reputations:
    0
    А как всё-таки правильно на 3 питоне код записать
     
  15. login999

    login999 Elder - Старейшина

    Joined:
    12 Jun 2008
    Messages:
    491
    Likes Received:
    280
    Reputations:
    92
    Вечером отпишу. Щас нету возможности проверить.
     
  16. XPYMGT

    XPYMGT New Member

    Joined:
    11 Apr 2009
    Messages:
    34
    Likes Received:
    3
    Reputations:
    0
    гДПЮЯРБСИРЕ, ЛНЪ ЯРСДХЪ ГЮМХЛЮЕРЯЪ ЯНГДЮМХЕЛ ЯЮИРНБ(ЯЮИРНБ БХГХРНЙ, ОЕПЯНМЮКЭМШУ ЯЮИРНБ, ХМРЕПМЕР ЛЮЦЮГХМНБ), БЕА-ДХГЮИМНЛ, ОПНБНДХЛ ПЕЙКЮЛМШЕ ЮЙЖХХ Б ХМРЕПМЕР, ЙКХЕМРЮЛ ОПЕДНЯРЮБКЪЕЛ УНЯРХМЦ, ПЮАНРЮ Я МЮЛХ ГЮКНЦ БЮЬЕЦН АСДСЫЕЦН СЯОЕУЮ. оПХЕЛКХЛШЕ ЖЕМШ. дНО. email: [email protected]. рЕК. 8-904-XXX-XX-XX (10.00 - 21.00 ЕФЕДМЕБМН). я СБЮФЕМХЕЛ, яЕПЦЕИ лХЬСЯРХМ.

    Блять людям какой-то бред типо этого приходит(на почтовые ящики на маиле). Что делать?
     
  17. login999

    login999 Elder - Старейшина

    Joined:
    12 Jun 2008
    Messages:
    491
    Likes Received:
    280
    Reputations:
    92
    http://python.su/forum/viewtopic.php?pid=24145
     
  18. login999

    login999 Elder - Старейшина

    Joined:
    12 Jun 2008
    Messages:
    491
    Likes Received:
    280
    Reputations:
    92
    Всё оказалось еще проще )
    Code:
    #!/usr/bin/python
    #-*-encoding:UTF-8-*-
    
    import smtplib
    import email
    from email.mime.text import MIMEText
    
    хост = "smtp.mail.ru"
    пользователь = "чей-то логин"
    пароль = "чей-то пароль"
    от_кого = "чьё-то мыло"
    адресаты = ["кому-то там"]
    заголовок = "Тест"
    текст_сообщения = "Проверка".encode("utf-8")
    соо = MIMEText(текст_сообщения, 'plain', 'utf-8')
    обьект = smtplib.SMTP(хост, 2525)
    обьект.login(пользователь, пароль)
    mess = соо.as_string()
    обьект.sendmail(от_кого, адресаты, mess)
    обьект.quit()
    
     
  19. Ice_VeNOm

    Ice_VeNOm Member

    Joined:
    5 Sep 2009
    Messages:
    36
    Likes Received:
    9
    Reputations:
    0
    urllib.request.build_opener() как задать более 5ти заголовков

    Code:
    opener = urllib.request.build_opener(urllib.request.HTTPCookieProcessor(cj))
    opener.addheaders = ....
    нужно передать 11 заголовков. После передачи 5ти

    Code:
    [('User-agent','Opera/9.80'),('Accept-Language',' ru-RU,ru;q=0.9,en;q=0.8'),('Accept-Charset',' iso-8859-1, utf-8, utf-16, *;q=0.1'),('Accept-Encoding',' deflate, gzip, x-gzip, identity, *;q=0'),('Cookie2',' $Version=1'),('Connection',' Keep-Alive, TE'),]
    питон пишет
    python 3.1
     
  20. login999

    login999 Elder - Старейшина

    Joined:
    12 Jun 2008
    Messages:
    491
    Likes Received:
    280
    Reputations:
    92
    Попробуй приблизительно так - Питон 3.1. не стоит чтобы проверить
    Code:
     
    opener = urllib.request.build_opener(urllib.request.HTTPCookieProcessor(cj))  
    headers = {"User-agent":"Opera/9.80", "Accept-Language":" ru-RU,ru;q=0.9,en;q=0.8"}
    req = urllib.request.Request("http://www.google.com", headers=headers) 
    print opener.open(req)