Python
Halaman SebelumnyaHalaman Berikutnya
Python menyediakan dua tingkat akses ke layanan jaringan. Pada tingkat rendah, Anda dapat mengakses dukungan soket dasar di sistem operasi yang mendasarinya, yang memungkinkan Anda mengimplementasikan klien dan server untuk protokol berorientasi koneksi dan tanpa koneksi.
Python juga memiliki perpustakaan yang menyediakan akses tingkat tinggi ke protokol jaringan tingkat aplikasi tertentu, seperti FTP, HTTP, dan sebagainya.
Bab ini memberi Anda pemahaman tentang konsep paling terkenal di Jaringan - Pemrograman Soket.
Soket adalah titik akhir dari saluran komunikasi dua arah. Soket dapat berkomunikasi dalam suatu proses, antara proses pada mesin yang sama, atau antara proses di benua yang berbeda.
Soket dapat diimplementasikan melalui sejumlah jenis saluran yang berbeda:soket domain Unix, TCP, UDP, dan sebagainya. soket library menyediakan kelas khusus untuk menangani transport umum serta antarmuka umum untuk menangani sisanya.
Soket memiliki kosakata sendiri
No.No. | Istilah &Deskripsi |
---|---|
1 | Domain Keluarga protokol yang digunakan sebagai mekanisme transport. Nilai-nilai ini adalah konstanta seperti AF_INET, PF_INET, PF_UNIX, PF_X25, dan seterusnya. |
2 | ketik Jenis komunikasi antara dua titik akhir, biasanya SOCK_STREAM untuk protokol berorientasi koneksi dan SOCK_DGRAM untuk protokol tanpa koneksi. |
3 | protokol Biasanya nol, ini dapat digunakan untuk mengidentifikasi varian protokol dalam domain dan jenis. |
4 | nama host Pengidentifikasi antarmuka jaringan
|
5 | pelabuhan Setiap server mendengarkan klien yang memanggil satu atau lebih port. Port dapat berupa nomor port Fixnum, string yang berisi nomor port, atau nama layanan. |
Untuk membuat soket, Anda harus menggunakan socket.socket() fungsi tersedia di soket modul, yang memiliki sintaks umum
s = socket.socket (socket_family, socket_type, protocol=0)
Berikut adalah deskripsi parameter
socket_family Ini adalah AF_UNIX atau AF_INET, seperti yang dijelaskan sebelumnya.
jenis_soket Ini adalah SOCK_STREAM atau SOCK_DGRAM.
protokol Ini biasanya ditinggalkan, default ke 0.
Setelah Anda memiliki soket objek, maka Anda dapat menggunakan fungsi yang diperlukan untuk membuat program klien atau server Anda. Berikut adalah daftar fungsi yang dibutuhkan
No.Sr. | Metode &Deskripsi |
---|---|
1 | s.bind() Metode ini mengikat alamat (nama host, pasangan nomor port) ke soket. |
2 | s.listen() Metode ini menyiapkan dan memulai pendengar TCP. |
3 | s.accept() Ini secara pasif menerima koneksi klien TCP, menunggu hingga koneksi tiba (pemblokiran). |
No.Sr. | Metode &Deskripsi |
---|---|
1 | s.connect() Metode ini secara aktif memulai koneksi server TCP. |
No.No. | Metode &Deskripsi |
---|---|
1 | s.recv() Metode ini menerima pesan TCP |
2 | s.send() Metode ini mengirimkan pesan TCP |
3 | s.recvfrom() Metode ini menerima pesan UDP |
4 | s.sendto() Metode ini mengirimkan pesan UDP |
5 | s.close() Metode ini menutup soket |
6 | socket.gethostname() Mengembalikan nama host. |
Untuk menulis server Internet, kami menggunakan soket fungsi yang tersedia di modul socket untuk membuat objek socket. Objek soket kemudian digunakan untuk memanggil fungsi lain untuk menyiapkan server soket.
Sekarang panggil bind(hostname, port) fungsi untuk menentukan port untuk layanan Anda pada host yang diberikan.
Selanjutnya, panggil terima metode objek yang dikembalikan. Metode ini menunggu hingga klien terhubung ke port yang Anda tentukan, lalu mengembalikan koneksi objek yang mewakili koneksi ke klien itu.
#!/usr/bin/python # This is server.py file import socket # Import socket module s = socket.socket() # Create a socket object host = socket.gethostname() # Get local machine name port = 12345 # Reserve a port for your service. s.bind((host, port)) # Bind to the port s.listen(5) # Now wait for client connection. while True: c, addr = s.accept() # Establish connection with client. print 'Got connection from', addr c.send('Thank you for connecting') c.close() # Close the connection
Mari kita menulis program klien yang sangat sederhana yang membuka koneksi ke port 12345 dan host yang diberikan. Ini sangat sederhana untuk membuat klien soket menggunakan soket Python fungsi modul.
socket.connect(hosname, port ) membuka koneksi TCP ke nama host di pelabuhan . Setelah soket terbuka, Anda dapat membacanya seperti objek IO lainnya. Setelah selesai, ingatlah untuk menutupnya, seperti Anda menutup file.
Kode berikut adalah klien yang sangat sederhana yang terhubung ke host dan port tertentu, membaca data apa pun yang tersedia dari soket, lalu keluar −
#!/usr/bin/python # This is client.py file import socket # Import socket module s = socket.socket() # Create a socket object host = socket.gethostname() # Get local machine name port = 12345 # Reserve a port for your service. s.connect((host, port)) print s.recv(1024) s.close() # Close the socket when done
Sekarang jalankan server.py ini di latar belakang lalu jalankan di atas client.py untuk melihat hasilnya.
# Following would start a server in background. $ python server.py & # Once server is started run client as follows: $ python client.py
Ini akan menghasilkan hasil berikut
Got connection from ('127.0.0.1', 48437) Thank you for connecting
Daftar beberapa modul penting dalam pemrograman Jaringan/Internet Python.
Protokol | Fungsi umum | No Port | Modul Python |
---|---|---|---|
HTTP | Halaman web | 80 | httplib, urllib, xmlrpclib |
NNTP | Gunakan berita | 119 | nntplib |
FTP | Transfer file | 20 | ftplib, urllib |
SMTP | Mengirim email | 25 | smtplib |
POP3 | Mengambil email | 110 | poplib |
IMAP4 | Mengambil email | 143 | imaplib |
Telnet | Baris perintah | 23 | telnetlib |
Gopher | Transfer dokumen | 70 | gopherlib, urllib |
Harap periksa semua pustaka yang disebutkan di atas agar berfungsi dengan protokol FTP, SMTP, POP, dan IMAP.
Ini adalah awal yang cepat dengan Pemrograman Socket. Ini adalah subjek yang luas. Disarankan untuk membuka tautan berikut untuk menemukan detail lebih lanjut
Pemrograman Soket Unix.
Pustaka dan Modul Soket Python.
Python
Artikel ini membawa Anda langkah demi langkah melalui program Python yang memungkinkan kami melatih jaringan saraf dan melakukan klasifikasi lanjutan. Ini adalah entri ke-12 dalam seri pengembangan jaringan saraf AAC. Lihat apa lagi yang ditawarkan seri ini di bawah ini: Bagaimana Melakukan Klasif
Artikel ini membahas konfigurasi Perceptron yang akan kita gunakan untuk eksperimen dengan pelatihan dan klasifikasi jaringan saraf, dan kita juga akan melihat topik terkait node bias. Selamat datang di rangkaian artikel teknis All About Circuits neural network. Dalam seri sejauh ini—tertaut di baw
Jika Anda melewatkannya:Python 2 adalah secara resmi tidak didukung mulai 1 Januari 2020 . Jika Anda masih menggunakan Python 2.7, tingkatkan sekarang . Jika Anda tidak yakin versi apa yang Anda jalankan, periksa versi Python Anda. Banyak pengelola paket telah bermigrasi ke Python 3. Beberapa mas
Halaman SebelumnyaHalaman Berikutnya Python menyediakan berbagai opsi untuk mengembangkan antarmuka pengguna grafis (GUI). Yang paling penting tercantum di bawah ini. Tkinter Tkinter adalah antarmuka Python ke toolkit GUI Tk yang dikirimkan bersama Python. Kami akan melihat opsi ini di bab ini.