Форум сайта python.su
 
							 0
  0   
								
								например картинку гугла… а лучше вот эту http://www.07bux.net/image.php?newtime='%20+%20(new%20Date()).getTime();
а с помощью PAMIE както можно сохранить картинку,?
Офлайн
 
							 1
  1   
								
								А зачем PAMIE? Для этого есть более адекватные инструменты.
Офлайн
 
							 0
  0   
								
								гм.. у меня стоит такая задача.. зделать автовход сюда  http://www.07bux.net/login.php
для этого я открываю в pamie оконо браузера http://www.07bux.net/login.php , заполняю формы, и хоче распознать капатчу с помощью fineocr. Чтоб капатчу распознать, ее надо сохранить в файл, что у меня собственно через PAMIE не выходит. Я не знаюсь в php, но я заметил, что если еще раз после открытия сгенерировать капатчу и ввести ее в старое поле - то капатча подойдет. Если это делать руками ( генерировать новую капатчу по ссылке http://www.07bux.net/image.php?newtime='%20+%20(new%20Date()).getTime(); ) то капатча подходит в старое поле code http://www.07bux.net/login.php ). Но если попытаться скачать новую капатчу через питон,
import urllib2
class DumbProxyPasswordMgr:
        def __init__(self):
                self.user = self.passwd = None
        def add_password(self, realm, uri, user, passwd):
                self.user = user
                self.passwd = passwd
        def find_user_password(self, realm, authuri):
                return self.user, self.passwd
def download(url, file_name,proxy_addres=None,proxy_user=None,proxy_pass=None):
    if url!='http://':
                url='http://'+url    
    if proxy_addres!=None:
        proxy= urllib2.ProxyHandler({“http” : "http://“+proxy_addres})
        proxy_auth_handler = urllib2.ProxyBasicAuthHandler(DumbProxyPasswordMgr ())
        proxy_auth_handler.add_password(None, None, proxy_user, proxy_pass)
        opener = urllib2.build_opener(proxy,proxy_auth_handler)
        urllib2.install_opener(opener)
        src = urllib2.urlopen(url)
    else:
        src = urllib2.urlopen(url)
    data = src.read()
    dst = open(file_name,”wb“); 
    dst.write(data)
download(”http://www.07bux.net/image.php?newtime='%20+%20(new%20Date()).getTime();",'image.jpg')
потом распознать и ввести в старое поле - то капатча почему то не подходит((( Не могу понять чем ручной процесc отличается от моего скрипта.. если кто то что то понял - обясните почему так, плз. 
Дальше я решил не сдаваться и попробовать сгенерировать и сохранить капатчу через mechanize или сразу сохранить капатчу из PAMIE((
вот собственно и вопрос.. как это сделать,?
если есть какие то другие инструменты для моих целей(заполнить форму, сохранить сегенерированую PHP капатчу) то пожалуйста посоветуйте их..
Офлайн
 
							 0
  0   
								
								и если можна, киньте инфы по mechanize … фто на сайте нихрена нема(
Офлайн
 
							 1
  1   
								
								Ммм… Как бы это сказать.
Задача мне, эээ, не нравится. Нехорошо как-то боты для автологина писать.
Но тем не менее я кое-что посоветую.
Во-первых - выбранные инструменты не подходят для задачи. Механизе и PAMIE сделаны для тестирования страниц и автоматизации ручных операций. Для такой задачи лучше использовать html-парсеры, urllib и т.п. Например httplib легко решит задачу заполнения формы и отправки данных чрез POST/GET. В urllib2 тоже есть практически всё необходимое - возможность скачать файл (для капчи), заполнить и отправить форму (при использовании ClientForm это вообще тривиальная задача) etc.
Для распознавания каптч есть вагон способов от автоматических до полуавтоматеческих.
Думаю найти в гугле подробности - не проблема.
Офлайн
 
							 0
  0   
								
								а чего не хорошего то,?) все что не запрещено - то дозволено, все что не плохо - хорошо…
Офлайн
 
							 0
  0   
								
								124bit
я думаю дело в том, что когда ты открываешь страничку с капчей в броузере - у тебя одно окружение (куки там например какие, реферер или что-нибудь подобное), а когда качаешь картинку питоном - другое.
Это всеравно что еслиб ты открыл эту страничку в двух разных броузерах. И пытался капчу из одного ввести в поле в другом.
Отредактировано (Сен. 22, 2008 19:39:40)
Офлайн
 
							 1
  1   
								
								а чего не хорошего тоА я и не говорю что запрещено. Мне не нравится.
Офлайн
 
							 0
  0   
								
								124bitТам есть в атрибутах картинки - атрибуты связанные с OLE. Может с помощью WinApi - можно через это как-то вытянуть саму картинку.
а с помощью PAMIE както можно сохранить картинку,?
Офлайн
 
							 0
  0   
								
								shiza, пасиба.. дал пару направлений для решения проблемы.
Офлайн