import socket target_host="www.google.com" target_port =80 #建立socket对象 client=socket.socket(socket.AF_INET,socket.SOCK_STREAM) #连接客户端 client.connect((target_host,target_port)) #发送一些数据 client.send("GET / HTTP/1.1\r\nHOST: google.com\r\n\r\n") #接收一些数据 response=client.recv(4096) print response
首先,我们建立一个包括AF_INET 和 SOCK_STREAM 参数的socket对象 AF_INET 参数说明我们将使用标准的IPv4地址或者主机名,SOCK_STREAM 说明这将是一个TCP客户端。然后,我们将客户端链接到服务器 并发送一些数据。最后一步是接收返回的数据并将响应数据打印出来。这是一个最简单的TCP客户端。
ai_family 参数指定调用者期待返回的套接口地址结构的类型。它的值包括三种:AF_INET,AF_INET6和AF_UNSPEC.如果指定AF_INET,那么函数就不能反悔任何IPV6相关的地址信息;如果仅指定了AF_INET6,则忽悠vybebg防御热播个IPV4地址信息。AF_UNSOEC则意味着函数返回的是适用于指定主机名和服务名且适合任何协议族的地址。如果摸个主机既有AAAA记录(IPV6)地址,同时又有A记录(IPV4)地址,那么AAA记录将作为sockaddr_in6结构返回,而A记录则作为sockaddr_in结构返回
import socket target_host="127.0