연구와 작업하는 동안 정수가 필요합니다 :파이썬 형식 오류 : 소켓
Getting a "TypeError: an integer is required" in my script
https://github.com/faucamp/python-gsmmodem/issues/39
여기 https://docs.python.org/2/howto/sockets.html
내 완전한 오류 출력 :
Traceback (most recent call last):
File "/home/promitheas/Desktop/virus/socket1/socket1.py", line 20, in <module>
createSocket()
File "/home/promitheas/Desktop/virus/socket1/socket1.py", line 15, in createSocket
ServerSock.bind((socket.gethostname(), servPort))
File "/usr/lib/python2.7/socket.py", line 224, in meth
return getattr(self._sock,name)(*args)
TypeError: an integer is required
코드 :
import socket
# Acquiring the local public IP address
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.connect(('8.8.8.8', 0))
# Defining some variables
servIpAddr = s.getsockname()[0]
servPort = ''
while ((len(servPort) < 4)): # and (len(servPort) > 65535)
servPort = raw_input("Enter server port. Must be at least 4 digits.\n> ")
# Creating a socket to wait for a connection
def createSocket():
ServerSock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
ServerSock.bind((socket.gethostname(), servPort)) # This is where the error occurs
ServerSock.listen(5)
(clientsocket, address) = ServerSock.accept()
if __name__ == "__main__":
createSocket()
다른 오류가 있는지 확실하지 않지만이 문제에 정말 놀랐습니다. 다른 정보가 필요한지 물어보십시오. 미리 감사드립니다.
이게 올바른 것으로 보입니다. 지금 시험하고 있습니다 – mee
완벽하게 작동합니다. 감사 – mee