Для тех кто собирается начать программировать на Python. Полезные ресурсы: Python WIKI: http://ru.pywiki.com/ Wiki Python: http://ru.wikipedia.org/wiki/Python Поисковик для Python: http://www.google.com/coop/cse?cx=009415166068715484302:5o_xkxqckma Русскоязычный сайт по Python: http://www.python.ru/ Официальный сайт по Python: http://www.python.org/ Также можно использовать эти поисковики: http://www.codenet.ru/ http://www.koders.com/ http://code.google.com/intl/ru-RU/ Python Library: http://docs.python.org/library/index.html
Python FAQ Python FAQИтак, интерпретатор CPython (стандарт Де Факто): http://python.org/download/ Python 2.* - это последние версии интерпретатора второй ветки Python 3.* - это последние версии интерпретатора третьей ветки Внимание! Третья ветка несовместима со второй Практически все сторонние модули в данный момент написаны для второй ветки Python. Стандартная библиотека для второй ветки Python :http://docs.python.org/2.6/modindex.html Стандартная библиотека для третьей ветки Python :http://docs.python.org/3.1/modindex.html Стандартная библиотека к изучению обязательна, таким образом вы будете задавать намного меньше тупорылых вопросов =/ Фреймворки :---Web :Django - мощный фреймворк для разработки веб-приложений Pylons - "лёгкий" фреймворк для веб-программирования TurboGears - мощный фреймворк для веб-программирования Zope - мощный фреймворк для веб-программирования, очень мощный ---Network:Twisted - сетевой фреймворк для асинхронного программирования ---Gui :PyGTK - фреймворк для разработки Gui, привязка к GTK+ PyQt - фреймворк для разработки Gui, привязка к Qt wxPython - фреймворк для разработки Gui, привязка к wxWidgets Литература : По русски : http://ru.wikibooks.org/wiki/Учебник_Python_2.6 - Перевод туториала, написанного автором языка Книга от Сузи Р.А. Перевод Djangobook По английски : Dive into python 3 Книга по Django Разная литература http://users.physik.fu-berlin.de/~goerz/refcards/python_refcard.pdf - Памятка по средствам языка Агрегатор русскоязычных ресурсов Python Русскоязычный форум по Python : http://python.su/forum/ Дальше будут IDE
http://diveintopython.org/http_web_services/redirects.html А если конкретнее, то : Я бы сделал try: except который бы чекал на редирект, а потом, если редиректа нету, то делал бы необходимое P.S. Подобными задачами никогда не занимался Скорее наоборот, так что поконкретнее ничего не скажу, и инет лагает, чтобы нормально проверить
А вообще, то лучше было бы попробовать для этого что то типа этого: Code: redir=urllib2.urlopen("www.someurl.com").geturl() if "REDIR" in str(redir): pass else: blah-blah-blah
Мне требуется авторизоваться на одном сайте, и отловить кукисы. Вот как сюда прикрутить отловку? PHP: def getPage(url, proxy = "", cookies = "", data = "", referer = "", timeout = 10): req = urllib2.Request(url, data); if proxy != "": req.set_proxy(proxy,"http"); req.add_header("Cookie", cookies); req.add_header("Referer", referer); req.add_header("User-Agent","Mozilla/5.0 (Windows; U; Windows NT 6.0; ru; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5"); try: res = urllib2.urlopen(req, data, timeout); except: return "none"; return res.info();
И в чем сложность? Тяжело просмотреть Set-cookie? Code: req = urllib2.Request("http://www.google.com/") f = urllib2.urlopen(req).info() print f
насчет редиректа тебе объяснили выше. http://mail.python.org/pipermail/python-list/2004-December/296259.html
Вот тебе кусок, где urllib2 хватает кукисы: Code: import cookielib,urllib,urllib2 cookie = cookielib.CookieJar() if proxy is not None: opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cookie),proxy) else: opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cookie)) urllib2.install_opener(opener) headers = {"User-Agent" : "Mozilla/4.0 (compatible; MSIE 5.5; WindowsNT)" } login_info=[ ("Login",login), ("Password",password) ] login_post_data = urllib.urlencode(login_info) try: login_request=urllib2.Request("http://www.google.com/", login_post_data, headers) login_response=str(urllib2.urlopen(login_request).read()) 2 Chaak - думаю, по примеру поймешь, что к чему, как отлавливать редирект, я написал выше De-Visible, это часть того, о чем мы говорили
Как через ctypes подключить коммуникатор к инету? Пример на си тут: http://msdn.microsoft.com/en-us/library/aa916370.aspx
Честно сказать -я хз, кроме Бидона нифига не знаю,и не имею никакого представления о С, могу только послать ссылкой на http://www.ragbag.ru/2007/03/23/python_ctypes_magic/ Что могу сказать - только одно, сначала нужно сам твой пример на С сделать функцией и всунуть его в либу, потом уже пытаться импортировать в Бидон, но это так - предположения
def s(a): print(a) s("dfgghfh") Пишет: print(a) ^ IndentationError: expected an indented block Че за блок я хз... Делал,как было написано.
Терь работает,вот только функция должна выводить всё,что я ей передаю в качестве параметров,а она молчит... ЗЫ: Кстати,конец у функций в питоне странный какой-то.В РНР там фигурные скобки есть,как и в паскале,а также и в джаваскрипте.Да и замуты зачем-то с изменением строк и передачей их аргументам замутили...оставили бы,как в си или том же РНР.
Code: def ga(x,y): x = 10 y = 10 if (x == y): s = compare(x,y) return s if(x > y): z = compare(x,y) return z if (x < y): d = compare(x,y) return d print(ga(5,2)) Вот,что выдало: File "C:\Python30\programms\prog1.py", line 7 return s SyntaxError: 'return' outside function Я так понял,что интерпретатор решил,что я за пределы функции выкинул return ?Но он же расположенв её *области видимости*.
Мне наоборот нравится так как есть, вообщем отступы в питоне играют очень важную роль, и еще заключай свой код в теги Code: исправь в своих постах.... [QUOTE][QUOTE=Велемир]def ga(x,y): x = 10 y = 10 if (x == y): s = compare(x,y) return s if(x > y): z = compare(x,y) return z if (x < y): d = compare(x,y) return d print(ga(5,2)) Вот,что выдало: File "C:\Python30\programms\prog1.py", line 7 return s SyntaxError: 'return' outside function Я так понял,что интерпретатор решил,что я за пределы функции выкинул return ?Но он же расположенв её *области видимости*.[/QUOTE][/QUOTE] Дело в отступах в первую очередь, где у тебя функция а где сам код проги хз, хрен отличишь. Если что я пока в асе, стучи помогу.
Опять трабла - в модуле нет ни функции find(),ни lower()...Интерпретатор Python 3.0(последний)+PyScripter(тоже последний).Сам модуль имеется. Code: import string a = "sdFgsSDfS" print(string.lower(a)) Сам резалт: AttributeError: 'module' object has no attribute 'lower' Возникает вопрос: Где взять эти функции ?
Code: s="aaaaaaASFG" s=s.lower() print s ^^^^^ ПРИМЕР Для этого не нужно импортировать модуль -эти функции - встроенные П.С. лучше не юзай python3000 -по нему нет ни доков толковых (на русском)+сам он по себе сырой Я лично пользуюсь 2.6.1 - и тебе рекомендую