ти роботу з програмою? Raquo ;. Якщо користувач продовжує пошук ( Так ), необхідно ввести наступне ключове слово пошуку (Прізвище). Якщо пошук потрібно припинити ( Ні ), у вікні сервера користувач вводить слово Вийти raquo ;, тим самим припиняючи роботу сервісу.
Рис.2. Блок-схема.
3. Керівництво програміста
У даній роботі розробка програми виконана на мові PYTHON в середовищі програмування PyCharm.2.7.3. Код програми можна умовно розділити на кілька основних логічних модулів.
. У Python для роботи з сокетами використовується бібліотека socket. З підключення цієї бібліотеки починається код як сервера, так і клієнта.
. Створення сокета. За прикладом - sock=socket.socket (). Ця частина є так само спільною як для клієнтського, так і для серверного додатків.
. Позначення хоста і порту сервера. Цей етап здійснюється за допомогою методу
Bind () - він пов'язує сокет з локальною кінцевою точкою для очікування вхідних запитів на з'єднання. Як параметр метод приймає хост і порт.
4.Установка з'єднання реалізується за допомогою декількох методів: Listen () - поміщає сокет в режим прослуховування (чекання). Цей метод призначений тільки для серверних додатків. Як параметр метод приймає можливе число підключень. Метод Accept () створює новий сокет для обробки вхідного запиту на з'єднання. Connect () - Встановлює з'єднання з віддаленим хостом.
Завдяки методу Raw_input () клієнт вводить дані з клавіатури і результат введення присвоюється деякої переменной.А метод Send () відправляє дані з'єднаному сокету.
. Прийом даних від клієнта і обробка запиту. Цей програмний модуль реалізується за допомогою методу Recv () - отримує дані від з'єднаного сокета, як аргумент приймає кількість байт для читання. Ми будемо читати порціями по 1024 байт (або 1 кб). Щоб відкрити файл (базу даних) для читання, необхідно використовувати метод Open (). Як параметр йому передається ім'я файлу і режим читання.
. За допомогою методу find () ми можемо перевірити входження підрядка переданої як параметр у перевіреній рядку.
. Метод close () закриває з'єднання.
4. Керівництво користувача
Для того, щоб почати роботу з програмою необхідно послідовно запустити файли server1.py і client1.py в середовищі програмування PyCharm.2.7.3. Це можна зробити, натиснувши правою кнопкою миші на відповідну вкладку, і, вибравши дію Run .
Після цього має відкритися вікно:
2.Далі користувач може ввести ключове слово пошуку (Прізвище).
3.Якщо в базі немає даних, сервер поверне дане повідомлення.
4.Чтоби припинити роботу з сервісом необхідно ввести Вийти .
Висновок
Комп'ютерний світ глобалізується на основі мережних комунікацій і протоколів. Інтернет стає обов'язковим атрибутом повсякденності. Все більше з'являється додатків, орієнтованих на мережу: це сервери баз даних, мережеві ігри, різні мережні протоколи, Web-сервери, аплети, сервлети, CGI-скрипти і т.д. Стає необхідним глибоке вивчення мережевого програмування.
У ході створення даної програми я проілюструвала принцип роботи сокетів за допомогою програми автоматичного сервера пошуку, ознайомилася з мовою програмування Python. Дана робота допомогла мені закріпити теоретичні знання в області обчислювальних мереж і відкрити для себе нові методи програмування.
Список використаної літератури
1.Марк Пілгрім Углиб мови Python , 2 002
.Бізлі. Д Python. Докладний довідник , 2 010
Додаток
Програма серверного додатку:
import socket
sock=socket.socket (). bind (( raquo ;, +9854)). listen (1), adr=sock.accept ()
connect.send ( Введіть прізвище: )
c=1c == 1=connect.recv (1024)
записує в змінну datadata == вийти :=2.send ( Сервіс закритий. )
connect.close ()=open ( text.txt , r )=0=0line in f: count1 == 0:=1line.find (data)!=-1: .send (line [0: len (line) - 1: 1])=0:=1count == 1:
connect.send ( Користувач відсутній в базі. ). close ()
Програма клієнтського додатка:
import socket=socket.socket (). connect (( loca...