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

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

  1. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    mironich В описании установки должно было быть написано скачать библиотеки отсюда - http://curl.haxx.se/download.html

    Ну а если просто установить, то отсюда установщик - http://www.lfd.uci.edu/~gohlke/pythonlibs/
     
    _________________________
  2. mironich

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

    Joined:
    27 Feb 2011
    Messages:
    733
    Likes Received:
    73
    Reputations:
    19
    Сам курл я скачал но там не было lib файлов, только dll и а и make файлы.
    Вот нашел сборку под 2.7, http://python4seo.net/wp-content/uploads/2010/08/pycurl-ssl-7.19.0.win32-py2.7.exe
    Спс. Диксу.
    ---------------------------------------------------------------------------
    Code:
    print os.path.getsize('Имя файла')
    
    Возвращает 0, хотя файл есть на диске и весит 4.5 кб.
     
    #962 mironich, 3 Jul 2012
    Last edited: 10 Jul 2012
  3. DeepXhadow

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

    Joined:
    19 Apr 2008
    Messages:
    57
    Likes Received:
    11
    Reputations:
    5
    Кто-нибудь сталкивался с Selenium?
    Нужно запускать Selenium WebDriver из-под сокса...в итоге *уй чо выходит....

    Code:
    from selenium import webdriver
        from selenium.webdriver.common.keys import Keys
        import os
        import random
        import socks
        import socket
        import urllib2
        import re
         
        def re_socks(currentSOCKS):
                a = re.match('(.*):(\d*)\s(\d*)', currentSOCKS)
                socks_addr = a.group(1)
                socks_port = a.group(2)
                socks_login = ""
                socks_pswd = a.group(3)
                socks.setdefaultproxy(socks.PROXY_TYPE_SOCKS5, socks_addr, int(socks_port), True, socks_login, socks_pswd)
                socket.socket = socks.socksocket
               
        def Selenium_start():
         
                driver = webdriver.Firefox()
                driver.close()
               
        currentSOCKS = "хх.197.ххх.ххх:49хх 5318635ххх"
        #re_socks(currentSOCKS)
        Selenium_start()

    убираем комент с re_socks(currentSOCKS) и все рушится
     
  4. mironich

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

    Joined:
    27 Feb 2011
    Messages:
    733
    Likes Received:
    73
    Reputations:
    19
    Можно ли перезагрузить функц. в python без, декораторов?
    Гуглил везде примеры с декораторами и пр. дополнениями.
     
  5. De-visible

    De-visible [NDC] Network develope c0ders

    Joined:
    6 Jan 2008
    Messages:
    916
    Likes Received:
    550
    Reputations:
    66
    А где лог ошибок?
     
  6. De-visible

    De-visible [NDC] Network develope c0ders

    Joined:
    6 Jan 2008
    Messages:
    916
    Likes Received:
    550
    Reputations:
    66
    Что подразумевается под словом перезагрузить?
    Обновить? Заменить?

    Вообще, можно таким вот образом:

    Заменить...
    Code:
    def Func():
          print 'Hello'
    
    def NewFunc():
          print 'Buy'
    
    Func = NewFunc
    NewFunc()
    [COLOR=Green]#-- Buy[/COLOR]



    Изменение:
    Code:
    [COLOR=White]
    def Func(UPDATE = None):
        print 'Start'
        if type(UPDATE).__name__=='function':
            UPDATE()
        print 'Finish'
        return
    
    def f():
        print 'UUUUUUUUUUUUU'
    
    Func()
    #--Start
    #--Finish
    
    Func(f)
    #--Start
    #--UUUUUUUUUUUUU
    #--Finish[/COLOR]
    
    
    Либо вместо функции делай класс, и наследуй.
    Либо используй декораторы.
     
    #966 De-visible, 9 Sep 2012
    Last edited: 9 Sep 2012
  7. mironich

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

    Joined:
    27 Feb 2011
    Messages:
    733
    Likes Received:
    73
    Reputations:
    19
    Насчет них я в своем посте написал.
    Но все равно спасибо, интересные варианты.
    Объявления нескольких функций с одинаковыми параметрами, но разными аргументами.
    Вот еще вопрос:
    В 1 поток код работает нормально, в 10 пропускает мыла которые нужно удалить из списка, естественно у каждого потока свой mail_list.
    Как такое возможно?
     
  8. FunOfGun

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

    Joined:
    5 Sep 2012
    Messages:
    388
    Likes Received:
    72
    Reputations:
    124
    Возможно не понял вопрос, но:
    Code:
     
    >>> def add(l):
    	l.append("Hello")
    
    >>> t=[]
    >>> add(t)
    >>> t
    ['Hello']
    >>> 
    
     
  9. De-visible

    De-visible [NDC] Network develope c0ders

    Joined:
    6 Jan 2008
    Messages:
    916
    Likes Received:
    550
    Reputations:
    66
    Хм... опять же желательно видеть более полный код, что бы сделать вывод. Тут вообще надо отлаживать, и смотреть почему так, вообще в потоках лучше использовать Queue
     
  10. login999

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

    Joined:
    12 Jun 2008
    Messages:
    491
    Likes Received:
    280
    Reputations:
    92
    Если я правильно понял "перегрузку методов" - попробуйте переопределить метод "__call__", но будьте готовы к гемморою, придется управлять доступом ко всем методам. И да, это актуально для обьектов, не для простых функций.

    2 DeepXhadow:
    Смешались в кучу кони, люди...
    Selenium webdriver - создан для тестирования Web-приложений. Он управляет браузерами. Вы же патчите сокет внутри своего приложений. Это абсолютно разные вещи. Ищите как установить прокси для браузера средствами самого Selenium.

    По поводу многопоточности - нужно больше кода :)
     
    #970 login999, 13 Sep 2012
    Last edited: 13 Sep 2012
  11. mironich

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

    Joined:
    27 Feb 2011
    Messages:
    733
    Likes Received:
    73
    Reputations:
    19
    Добрый день!
    Проблема такая: Есть html стр. в которой есть куски javascript в них идет работа с dom элементами, выполняю js через PyV8, но нужно туда подгрузить document как в js, маленький класс написал получилось, а хочется полностью doom класс, чтобы у каждого html тега в нем были нужные свойства.
    Дабы велосипед не пилить.
    Броузеры не подходят под мои задачи не подходят, сильно тормозят: selenium, spynner.....
    Заранее спасибо.
    DeepXhadow, попробуйте spynner.
     
  12. Adio

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

    Joined:
    23 May 2005
    Messages:
    1,646
    Likes Received:
    148
    Reputations:
    18
    Как на питоне прочтитать файл почты eml со всеми нах кодировками ? что бы нормально отобразился и т д ?

    Спасибо большое поставлю полюсь за разьяснение.
    Извените нервы
     
  13. m00c0w

    m00c0w Banned

    Joined:
    25 Dec 2011
    Messages:
    104
    Likes Received:
    14
    Reputations:
    5
    http://docs.python.org/library/email.html
    http://docs.python.org/library/email-examples.html
     
    #973 m00c0w, 1 Oct 2012
    Last edited: 1 Oct 2012
  14. Adio

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

    Joined:
    23 May 2005
    Messages:
    1,646
    Likes Received:
    148
    Reputations:
    18
    Спасибо, я питон 1 раз в глаза вижу, но смысл понятен.

    Вот код которые парсит письмо


    Code:
    # Import the email modules we'll need from email.parser import Parser  #  If the e-mail headers are in a file, uncomment this line: #headers = Parser().parse(open(messagefile, 'r'))  #  Or for parsing headers in a string, use: headers = Parser().parsestr('From: <[email protected]>\n'         'To: <[email protected]>\n'         'Subject: Test message\n'         '\n'         'Body would go here\n')  #  Now the header items can be accessed as a dictionary: print 'To: %s' % headers['to'] print 'From: %s' % headers['from'] print 'Subject: %s' % headers['subject']
    
    Я раскоментил верхнюю часть,

    Поставил путь до файла, парсит хорошо, но !

    Парсит только заголовки а не тему письма, и парси в зашифрованном виде..

    Подскажите куда копать мне нужно спарсить и тело письма так же и что бы оно было если что расшифрованно - в питоне полный ноль но приходиться :mad:
     
  15. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    Adio Возьмите себя в руки и прочитайте http://docs.python.org/library/email.html Со всеми ссылками на сабмодули и РФЦ
     
    _________________________
  16. mironich

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

    Joined:
    27 Feb 2011
    Messages:
    733
    Likes Received:
    73
    Reputations:
    19
    Нормально ли в модуле, использовать вместо констант переменные? Т.к их в питоне нету....
    Например:
    Code:
    BIG_TITS = 4 //Как-бэ константа
    
    class girl(object):
       .....
    
    Если такие переменные используються в в классе, то при многопоточной работе может возникнуть искл. из-за того что два потока обратятся одновременно к этой переменной?
    И вообще насколько правильно так писать, или лучше в документации к классу\модулю писать что такая-то цифра\строка означает за это...
    Вот например в pycurl сделано так.
    Как лучше проверить что в списке есть только определенные обьекты?
    Я написал так:
    Code:
    		
    check_tuple = (SOURCES_WEB, SOURCES_IMAGE, 
    			SOURCES_VIDEO, SOURCES_NEWS, SOURCES_SPELL)
    map(lambda i: if i not in check_tuple: raise SearchError('Invalid sources type'))
     
  17. mironich

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

    Joined:
    27 Feb 2011
    Messages:
    733
    Likes Received:
    73
    Reputations:
    19
    Есть такой код:
    Code:
    import ntplib
    ntp_client = ntplib.NTPClient()
    r = ntp_client.request('ntp.mobatime.ru', version=3)
    t = time.localtime(r.tx_time)
    print win32api.SetSystemTime(			
    			t.tm_year,
    			t.tm_mon,
    			t.tm_wday,
    			t.tm_mday,
    			t.tm_hour,
    			55,
    			t.tm_sec,
                            0
    )
    
    Не правильно устанавливает время, вместо 15, 16 число ставит...
     
  18. Ins3t

    Ins3t Харьковчанин

    Joined:
    18 Jul 2009
    Messages:
    939
    Likes Received:
    429
    Reputations:
    139
    как дела сей час обстоят с 3м питоном? актуален ли он? юзабелен ли на данный момент?
     
  19. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    Ins3t Как вещь в себе - вполне. Заложенные идеи - хороши. Проблема только в коммьюнити и том, что многие модули не портируются из второй ветки в третью.
     
    _________________________
  20. Ins3t

    Ins3t Харьковчанин

    Joined:
    18 Jul 2009
    Messages:
    939
    Likes Received:
    429
    Reputations:
    139
    я так понимаю, человеку планирующему заниматься вебдевом с использованием django или Flack лучше на 2.7 пока остаться?