Upload
aristotle-bryan
View
48
Download
6
Tags:
Embed Size (px)
DESCRIPTION
Здравствуйте все! Меня зовут Георгий Михайлович И сегодня я представлю вам презентацию на тему. Протокол межсетевого взаимодействия и его поддержка (Internet Protocol and Support). 14 мая 2010 год …. Протокол межсетевого взаимодействия и его поддержка (Internet Protocol and Support). - PowerPoint PPT Presentation
Citation preview
Здравствуйте все! Здравствуйте все! Меня зовут Георгий МихайловичМеня зовут Георгий Михайлович
И сегодня я представлю вам И сегодня я представлю вам презентацию на темупрезентацию на тему
Протокол межсетевого Протокол межсетевого взаимодействия и его взаимодействия и его поддержкаподдержка(Internet (Internet Protocol and Support)Protocol and Support)
14 мая 2010 год ….
Протокол межсетевого Протокол межсетевого взаимодействия и его взаимодействия и его
поддержкаподдержка(Internet Protocol and (Internet Protocol and Support)Support) 1. Что это такое?
Это большая, хорошо разработанная группа модулей, реализующая доступ к сетевым протоколам и форматам файлов.
Рассмотрим некоторые из них…
webbrowser module -Модуль который webbrowser module -Модуль который позволяет обеспечить позволяет обеспечить
высокоуровневый, разрешающий высокоуровневый, разрешающий отображать веб документы отображать веб документы
пльзователюпльзователю 2. import webbrowser!
Стандартный модуль Python webbrouser позволяет запустить "наиболее подходящий" Web-браузерИмеет несколько основных функций… webbrowser.open_new(url) –
открывает url в новом окне браузера
webbrowser.open_new_tab(url) – открывает url в новой страницы запущенного браузера
Common gateway interface support Common gateway interface support ((Общий шлюзовой интерфейс и его Общий шлюзовой интерфейс и его
поддержка)поддержка) 3. Немного умных слов
CGI является мощным средством динамической генерации Веб страниц. CGI скрипты вызываются веб-сервером, а результат их работы отправляется на клиентский броузер. Таким образом, CGI скрипты способны выполнять любые запросы клиента на сервере и отправлять клиенту результаты запроса.
Common gateway interface support Common gateway interface support ((Общий шлюзовой интерфейс и его Общий шлюзовой интерфейс и его
поддержка)поддержка) 4. С чем его едят?
Типичная CGI программа состоит из двух частей: из передачи HTTP заголовков и передачи HTML данных. Веб-сервер связывает вывод CGI скрипта со вводом у броузера. Всё, что выводится CGI скриптом передаётся на клиентскую машинуОбратная связь осуществляется передачей данных от сервера клиенту путём передачи параметров.
Common gateway interface support Common gateway interface support ((Общий шлюзовой интерфейс и его Общий шлюзовой интерфейс и его
поддержка)поддержка) 5. Пример cgi программыВот пример типичной CGI программы:
вначале выводятся заголовки
print "Content-Type: text/html" # Определение типа HTML
print # Пустая строка означает окончание передачи заголовков
#теперь выводим основной текст в формате HTML
print "<TITLE>CGI script output</TITLE>"
print "<H1>This is my first CGI script</H1>"
print "Hello, world!"
Common gateway interface support Common gateway interface support ((Общий шлюзовой интерфейс и его Общий шлюзовой интерфейс и его
поддержка)поддержка) 6. Передача параметров
Итак передача параметров в CGI скрипт осуществляется двумя методами: прямой передачей параметров в имени URL в формате “http://адрес_скрипта?имя_параметра1=значение_параметра1&имя_параметра2=значение2...”
При этом способе в программе становятся доступными переменные имя_параметра и им присваиваются переданные значения; второй способ состоит в передаче параметров через HTML форму. Во втором случае необходимо применение модуля CGI:
Common gateway interface support Common gateway interface support ((Общий шлюзовой интерфейс и его Общий шлюзовой интерфейс и его
поддержка)поддержка) 7 Про Ошибки…import cgi*** Затем, чтобы включить обработку ошибок полезно вставить в начало следующие строчки***
import cgitb; cgitb.enable()# Включает обработку ошибок(Полезно!)
import cgitb; cgitb.enable(display=0, logdir="/tmp")#Ошибки вашего скрипта передаются не в браузер клиента, а в log фаил
Common gateway interface support Common gateway interface support ((Общий шлюзовой интерфейс и его Общий шлюзовой интерфейс и его
поддержка)поддержка) 8 FieldStorage
FieldStorage, который содержит в себе переданную в форме информацию. По сути дела этот класс представляет из себя словарь, обладающий теми же свойствами, что и обычный питоновский словарь, например методами has_key и key(), также можно определить его длину функцией len(). По умолчанию FieldStorage не содержит тех значений, которые в форме остались пустыми (например пустое поле ввода). Чтобы FieldStorage включал все переменные формы сделайте так:form = cgi.FieldStorage(keep_blank_values=true)
Common gateway interface support Common gateway interface support ((Общий шлюзовой интерфейс и его Общий шлюзовой интерфейс и его
поддержка)поддержка)9 Примерчик
Покажем пример работы с формой:#Передали заголовки ранееform = cgi.FieldStorage() #Здесь пустых значений нет!if not (form.has_key("name") and form.has_key("addr")): #А есть ли такие поля?print "<H1>Error</H1>" #Плохая формаprint "Please fill in the name and addr fields."returnprint "<p>name:", form["name"].valueprint "<p>addr:", form["addr"].value #Дальше обрабатываем форму
Модуль Модуль smtplib, smtplib, для отправки для отправки сообщенийсообщений
10. Здравствуйте, я спам бот!
Для отправки сообщений по протоколу SMTP нужно использовать библиотеку smtplib. Определяя экземпляр класса SMTP, устанавливаем соединение с SMTP сервером:import smtplib
mail=smtplib.SMTP("smtpserver.ru")
Модуль Модуль smtplib, smtplib, для отправки для отправки сообщенийсообщений
11 Думаем над примером
import smtplibmail=smtplib.SMTP("smtpserver.ru")msg = """Subject: Новость\n #тема сообщения From: Intersoft Web Server \n #отправитель MIME-Version: 1.0\n #версия MIME Content-Type: text/html\n\n #тип сообщения”””Hello World!””” #тело сообщения
mail.sendmail( '[email protected]', '[email protected]', msg )#admin- отправитель, market - получатель
urllib — чтение произвольных ресурсов urllib — чтение произвольных ресурсов по URLпо URL
12 Наконец то последний модуль!)
Этот модуль предоставляет средства высокого уровня для чтения сетевых ресурсов, используя различные протоколы. В частности функция urlopen() ведет себя аналогично встроенной функции open(), но воспринимает URL вместо имени файла.
При этом, естественно, налагаются некоторые ограничения: Вы можете открыть ресурс только для чтения
urllib — чтение произвольных ресурсов urllib — чтение произвольных ресурсов по URLпо URL
13 Простая разминка мозга…
Модуль имеет длинный ряд функций, но связи с тем, что мы не будем его детально изучать, ограничимся только одной…
import urllibf = urllib.urlopen("http://ya.ru/")print f.read()
Вообщем то все…Вообщем то все…
Спасибо за внимание!)
Информация взята из различных глубин интернета…