当前位置:首页 » 编程语言 » pythonsocks安装

pythonsocks安装

发布时间: 2022-05-10 07:27:31

python怎样建立socket服务器

下面的例子是多线程实现的socket服务器:

import socketimport threadingclass ThreadedServer(object):
def __init__(self, host, port):
self.host = host
self.port = port
self.sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
self.sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
self.sock.bind((self.host, self.port))

def listen(self):
self.sock.listen(5)
while True:
client, address = self.sock.accept()
client.settimeout(60)
threading.Thread(target = self.listenToClient,args = (client,address)).start()

def listenToClient(self, client, address):
size = 1024
while True:
try:
data = client.recv(size)
if data:
# Set the response to echo back the recieved data
response = data
client.send(response)
else:
raise error('Client disconnected')
except:
client.close()
return Falseif __name__ == "__main__":
while True:
port_num = input("Port? ")
try:
port_num = int(port_num)
break
except ValueError:
pass

ThreadedServer('',port_num).listen()

⑵ 请问,我要用python语言实现socket编程,请问需要下载什么软件呢 急需啊~!!!!先谢谢了!

我从网上给你拷两个例子

服务器

#!/usr/bin/python
"USAGE:echoserver.py<port>"
,TCPServer
importsys,socket

classEchoHandler(BaseRequestHandler):
defhandle(self):
print"Clientconnected:",self.client_address
self.request.sendall(self.request.recv(2**16))
self.request.close()
iflen(sys.argv)!=2:
print__doc__
else:
TCPServer(('',int(sys.argv[1])),EchoHandler).serve_forever()

客户端

#!/usr/bin/python
"USAGE:echoclient.py<server><word><port>"
fromsocketimport*
importsys
iflen(sys.argv)!=4:
print__doc__
sys.exit(0)
sock=socket(AF_INET,SOCK_STREAM)
sock.connect((sys.argv[1],int(sys.argv[3])))
message=sys.argv[2]
messlen,received=sock.send(message),0
ifmesslen!=len(message):
print"Failedtosendcompletemessage"
print"Received:",
whilereceived<messlen:
data=sock.recv(32)
sys.stdout.write(data)
received+=len(data)
print
sock.close()

⑶ 菜鸟求教一个关于python socket的问题

情况时这样,最近刚学python,一直使用的文本编辑,在学到socket时自己尝试写了一个小脚本,部分语句如下:
import socket
self.service=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
python 运行无错

最近又发现,原来eclipse是有python扩展包的,于是尝试把自己写的东西放到eclipse中运行,然后就报错了:
self.service=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
AttributeError: 'mole' object has no attribute 'AF_INET'

ctrl+左键放到AF_INET提示此值存放在_socket下,于是有以下尝试:

import socket
import _socket

print _socket.AF_INET #无报错,返回2
print socket.AF_INET #报错

于是修改了脚本
import _socket as socket
我的脚本运行正常

首先,我系统的环境使用的时python2.6,eclipse中,windows-》preferences-》interpreter - python这里面的lib包(指向/usr/bin/python2.6),与我在终端的输出sys.path输出的值时一样的

然后,我的问题:
1,是不是在python中有两个模块,一个叫socket,一个叫_socket?
2,为什么在终端执行,可以直接import socket.AF_INET,而在eclipse中则需要import _socket?
可能你的测试脚本或当前路进下有其他脚本也叫socket,优先被载入造成错误,试试import后立刻打印路径看看是不是标准的那个...
>>> import socket
>>> print socket.__file__
C:\Python27\lib\socket.pyc
>>>

⑷ python 怎么安装socketserver

如果是工具包的话可以先安装pip ,一般python 中会有自带的较低版本的pip,在配置环境变量的时候把Scripts文件夹路径加进去就可以使用pip了。
用pip install 工具包名

这个命令就可以了

⑸ 在python中使用socket命令是要下载这个库吗还是直接import socket

由于是广泛使用的库,所以安装包自带了

⑹ python socket怎么测试服务端有效

首先先建立一个python文件,命名为 socket_server1.py

下面是相关的步骤图.(图片来源python官方资料参考)

先导入相关的模块.并且定义相关的主机及端口.(相关参数可以参考下图)

完整的socket_server1.py文件.

设置好之后,通过命令提示符测试(进行测试.开始-----运行-----cmd)

先使用python 运行下刚刚的那个文件. >>python socket_server1.py

客户端直接使用telnet代替测试一下.>>telnet 127.0.0.1 10086

然后在服务端的窗口上面会出现相关的客户端信息,在客户端的窗口上面,输入一个字符,服务器端会显示出来,并且客户端上面会返回一个大写的字符。

9
这个就是一个简单的 python的socket的服务器端了。只是测试,没有排错日志

⑺ 在云服务器ecs上运行python socket模块的服务器端代码,用自己的笔记本运

可以直接安装最新版的python,里面自带pip。
然后用pip安装virtualenv,用virtualenv做环境分离出python3.4。这一步往上很多教程,非常简单,一搜就能搜到。
再在你分离出的环境里用pip安装项目用到的依赖。
最后,你需要把代码上传,并且运行。

⑻ 如何使用python::SocketServer.socket.ssl模块

现在记录HTTPS服务端的编写。
importssl,socket,time
if__name__=="__main__":
context=ssl.SSLContext(ssl.PROTOCOL_SSLv23)
#context.load_cert_chain(certfile=‘key_pub.pem’,keyfile=‘key_priv.pem')#可以分开定义公钥和私钥文件,也可以合并成一个文件
context.load_cert_chain(certfile=’cert.pem')

bindsocket=socket.socket()
bindsocket.bind(('127.0.0.1',443))
bindsocket.listen(5)

newsocket,fromaddr=bindsocket.accept()
connstream=context.wrap_socket(newsocket,server_side=True)

try:
data=connstream.recv(1024)
print(data)
buf='HiNN%f '%time.time()
buf=buf.encode()
connstream.send(buf)
finally:
connstream.shutdown(socket.SHUT_RDWR)
connstream.close()
bindsocket.close()
此例没有使用socketserver框架,目的在于测试ssl模块的用法。


继续,用框架实现HTTPS服务
importsocketserver,ssl,time
classMyHTTPSHandler_socket(socketserver.BaseRequestHandler):
defhandle(self):
context=ssl.SSLContext(ssl.PROTOCOL_SSLv23)
context.load_cert_chain(certfile="cert.pem")
SSLSocket=context.wrap_socket(self.request,server_side=True)
self.data=SSLSocket.recv(1024)
print(self.data)
buf='testHTTPSServerHandler<br>%f'%time.time()
buf=buf.encode()
SSLSocket.send(buf)

if__name__=="__main__":
port=443
httpd=socketserver.TCPServer(('localhost‘,port),MyHTTPSHandler_socket)
print(’httpsservingatport',port)
httpd.serve_forever()
说明:handle()函数负责所有与客户端的通信。客户端连接过来之后,ssl模块载入证书,并用SSLSocket对socket进行封装,屏蔽底层的加密通信细节。

下面再给出HTTPS文件服务器代码,文件访问功能由SimpleHTTPRequestHandler实现,数据加密传输由ssl实现。
importsocketserver,ssl,time,http.server
classMyHTTPS_SimpleHTTPRequestHandler(http.server.SimpleHTTPRequestHandler):
defsetup(self):
print('setup')
context=ssl.SSLContext(ssl.PROTOCOL_SSLv23)
context.load_cert_chain(certfile=‘cert.pem’)
SSLSocket=context.wrap_socket(self.request,server_side=True)
self.rfile=SSLSocket.makefile('rb',self.rbufsize)
self.wfile=SSLSocket.makefile('wb',self.wbufsize)

if__name__=="__main__":
port=443
httpd=socketserver.TCPServer(("localhost",port),MyHTTPS_SimpleHTTPRequestHandler)
print('httpsservingatport',port)
httpd.serve_forever()
最后,要指出的是setup()和handle()都是在客户端开始连接之后才被调用,从顺序上来说setup()先于handle()。

⑼ 如何用nginx部署python写的socket服务器代码

1.安装nginx安装过nginx这就不好从新演示了.默认你也安装好了nginx.
2.安装flup$:dpkg -l *flup*打印信息:Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Installed/Config-files/Unpacked/Failed-config/Half-installed
|/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: uppercase=bad)
||/ Name Version Description
+++-===========================-===========================-======================================================================
ii python-flup 0.2126-1 Implements Python Web Server Gateway Interface (WSGI)
$:apt-get install python-flup
3:配置nginx.conf.这个是按照网上配置的.
server {listen 1235;
server_name localhost;
#charset koi8-r;
#access_log /dev/null;
access_log /usr/local/nginx/logs/access.log;
location / {
#location /htm {
# root /home/utest/ms;#}root /home/utest/ms;
fastcgi_pass 127.0.0.1:1234;
fastcgi_param PATH_INFO $fastcgi_script_name;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param QUERY_STRING $query_string;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;
fastcgi_param CONTENT_LENGTH $content_length;
include fastcgi_params;
fastcgi_pass_header Authorization;
fastcgi_intercept_errors off;}}解释:端口:1235--为监听端口.端口:1234----为web服务器运行的端口.
from=olddocs

热点内容
tomcat下载linux 发布:2025-05-11 07:47:06 浏览:791
phpcookie设置时间 发布:2025-05-11 07:36:15 浏览:110
固态硬盘需要缓存吗 发布:2025-05-11 07:29:09 浏览:605
松江换门密码锁哪里有 发布:2025-05-11 07:23:21 浏览:326
自动配置代理什么意思 发布:2025-05-11 07:16:51 浏览:993
notepad编写php 发布:2025-05-11 07:10:50 浏览:864
茄子快传的文件夹 发布:2025-05-11 07:04:30 浏览:734
手机指纹密码如何更换 发布:2025-05-11 07:02:22 浏览:123
java存储数据库 发布:2025-05-11 07:01:33 浏览:177
办理ca的初始密码是多少 发布:2025-05-11 06:54:55 浏览:425