我正在写一个小型的IRC机器人,令我感到沮丧,我得到了一个我似乎无法理解或修复的错误。我之前使用过的代码,但现在windows似乎对它不满意。
错误:
socket.error:[Errno 10013]尝试以其访问权限禁止的方式访问套接字
这是我敲开的快速代码:
import socket
s = socket.socket().connect(("irc.cryto.net", 6667))
s.send("NICK kNij\r\n")
s.send("USER kNij 0 0 kNij :derp :3\r\n")
inputfile = s.makefile()
while 1:
line = inputfile.readline()
print line
编辑:这似乎是一些套接字的问题
答案 0 :(得分:1)
这永远不会奏效。 connect
返回None
(至少在Windows 7上使用Python 2.7.2)。
尝试:
import socket
s = socket.socket()
s.connect(("Lidingo.SE.EU.Undernet.org", 6667))
s.send("NICK kNij\r\n")
s.send("USER kNij 0 0 kNij :derp :3\r\n")
inputfile = s.makefile()
while 1:
line = inputfile.readline()
print line,
(我更改了服务器以确保代码真的有效)
现在,为什么你得到那个错误,而不是像我一样:
Traceback (most recent call last):
File "D:\workspaces\generic\SO_Python\9337618.py", line 4, in <module>
s.send("NICK kNij\r\n")
AttributeError: 'NoneType' object has no attribute 'send'
是一种谜......
答案 1 :(得分:0)
可能无法访问端口8000。 尝试使用python manage.py runserver 8888命令将端口号更改为8888。 它对我有用