- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是 Python 和网络新手,我知道我的问题可能听起来多余,但我花了几个小时研究 from socket import *
之间的区别和 import socket
以及不同类型的套接字对象。我目前正在制作一个简单的数据包嗅探器,并且遇到了很多属性错误。我注意到如果我写 import socket
并执行dir(socket)
我得到:
AF_APPLETALK
AF_DECnet
AF_INET
AF_INET6
AF_IPX
AF_LINK
AF_ROUTE
AF_SNA
AF_SYSTEM
AF_UNIX
AF_UNSPEC
AI_ADDRCONFIG
AI_ALL
AI_CANONNAME
AI_DEFAULT
AI_MASK
AI_NUMERICHOST
AI_NUMERICSERV
AI_PASSIVE
AI_V4MAPPED
AI_V4MAPPED_CFG
AddressFamily
CAPI
CMSG_LEN
CMSG_SPACE
EAGAIN
EAI_ADDRFAMILY
EAI_AGAIN
EAI_BADFLAGS
EAI_BADHINTS
EAI_FAIL
EAI_FAMILY
EAI_MAX
EAI_MEMORY
EAI_NODATA
EAI_NONAME
EAI_OVERFLOW
EAI_PROTOCOL
EAI_SERVICE
EAI_SOCKTYPE
EAI_SYSTEM
EBADF
EWOULDBLOCK
INADDR_ALLHOSTS_GROUP
INADDR_ANY
INADDR_BROADCAST
INADDR_LOOPBACK
INADDR_MAX_LOCAL_GROUP
INADDR_NONE
INADDR_UNSPEC_GROUP
IPPORT_RESERVED
IPPORT_USERRESERVED
IPPROTO_AH
IPPROTO_DSTOPTS
IPPROTO_EGP
IPPROTO_EON
IPPROTO_ESP
IPPROTO_FRAGMENT
IPPROTO_GGP
IPPROTO_GRE
IPPROTO_HELLO
IPPROTO_HOPOPTS
IPPROTO_ICMP
IPPROTO_ICMPV6
IPPROTO_IDP
IPPROTO_IGMP
IPPROTO_IP
IPPROTO_IPCOMP
IPPROTO_IPIP
IPPROTO_IPV4
IPPROTO_IPV6
IPPROTO_MAX
IPPROTO_ND
IPPROTO_NONE
IPPROTO_PIM
IPPROTO_PUP
IPPROTO_RAW
IPPROTO_ROUTING
IPPROTO_RSVP
IPPROTO_TCP
IPPROTO_TP
IPPROTO_UDP
IPPROTO_XTP
IPV6_CHECKSUM
IPV6_DSTOPTS
IPV6_HOPLIMIT
IPV6_HOPOPTS
IPV6_JOIN_GROUP
IPV6_LEAVE_GROUP
IPV6_MULTICAST_HOPS
IPV6_MULTICAST_IF
IPV6_MULTICAST_LOOP
IPV6_NEXTHOP
IPV6_PKTINFO
IPV6_RECVTCLASS
IPV6_RTHDR
IPV6_RTHDR_TYPE_0
IPV6_TCLASS
IPV6_UNICAST_HOPS
IPV6_V6ONLY
IP_ADD_MEMBERSHIP
IP_DEFAULT_MULTICAST_LOOP
IP_DEFAULT_MULTICAST_TTL
IP_DROP_MEMBERSHIP
IP_HDRINCL
IP_MAX_MEMBERSHIPS
IP_MULTICAST_IF
IP_MULTICAST_LOOP
IP_MULTICAST_TTL
IP_OPTIONS
IP_RECVDSTADDR
IP_RECVOPTS
IP_RECVRETOPTS
IP_RETOPTS
IP_TOS
IP_TTL
IntEnum
LOCAL_PEERCRED
MSG_CTRUNC
MSG_DONTROUTE
MSG_DONTWAIT
MSG_EOF
MSG_EOR
MSG_OOB
MSG_PEEK
MSG_TRUNC
MSG_WAITALL
NI_DGRAM
NI_MAXHOST
NI_MAXSERV
NI_NAMEREQD
NI_NOFQDN
NI_NUMERICHOST
NI_NUMERICSERV
PF_SYSTEM
SCM_CREDS
SCM_RIGHTS
SHUT_RD
SHUT_RDWR
SHUT_WR
SOCK_DGRAM
SOCK_RAW
SOCK_RDM
SOCK_SEQPACKET
SOCK_STREAM
SOL_IP
SOL_SOCKET
SOL_TCP
SOL_UDP
SOMAXCONN
SO_ACCEPTCONN
SO_BROADCAST
SO_DEBUG
SO_DONTROUTE
SO_ERROR
SO_KEEPALIVE
SO_LINGER
SO_OOBINLINE
SO_RCVBUF
SO_RCVLOWAT
SO_RCVTIMEO
SO_REUSEADDR
SO_REUSEPORT
SO_SNDBUF
SO_SNDLOWAT
SO_SNDTIMEO
SO_TYPE
SO_USELOOPBACK
SYSPROTO_CONTROL
SocketIO
SocketKind
SocketType
TCP_MAXSEG
TCP_NODELAY
_GLOBAL_DEFAULT_TIMEOUT
_GiveupOnSendfile
_LOCALHOST
_LOCALHOST_V6
__all__
__builtins__
__cached__
__doc__
__file__
__loader__
__name__
__package__
__spec__
_blocking_errnos
_intenum_converter
_realsocket
_socket
create_connection
dup
errno
error
fromfd
gaierror
getaddrinfo
getdefaulttimeout
getfqdn
gethostbyaddr
gethostbyname
gethostbyname_ex
gethostname
getnameinfo
getprotobyname
getservbyname
getservbyport
has_ipv6
herror
htonl
htons
if_indextoname
if_nameindex
if_nametoindex
inet_aton
inet_ntoa
inet_ntop
inet_pton
io
ntohl
ntohs
os
selectors
setdefaulttimeout
sethostname
socket
socketpair
sys
timeout
Process finished with exit code 0
from socket import *
我得到:
__class__
__delattr__
__dir__
__doc__
__enter__
__eq__
__exit__
__format__
__ge__
__getattribute__
__getstate__
__gt__
__hash__
__init__
__le__
__lt__
__module__
__ne__
__new__
__reduce__
__reduce_ex__
__repr__
__setattr__
__sizeof__
__slots__
__str__
__subclasshook__
__weakref__
_accept
_check_sendfile_params
_closed
_decref_socketios
_io_refs
_real_close
_sendfile_use_send
_sendfile_use_sendfile
accept
bind
close
connect
connect_ex
detach
dup
family
fileno
get_inheritable
getpeername
getsockname
getsockopt
gettimeout
listen
makefile
proto
recv
recv_into
recvfrom
recvfrom_into
recvmsg
recvmsg_into
send
sendall
sendfile
sendmsg
sendto
set_inheritable
setblocking
setsockopt
settimeout
shutdown
timeout
type
Process finished with exit code 0
import socket
import os
class Sniff:
def __init__(self, HOST):
self.HOST = HOST
self.sniffer = socket
def sniff_packet(self, host, win, socket_prot):
self.sniffer = socket.socket(socket.AF_INET, socket.SOCK_RAW, socket_prot)
self.sniffer.bind((host, 80))
self.sniffer.setsocketopt(socket.IPPROTO_IP, socket.IP_HDRINCL, 1)
if win == 1:
self.sniffer.iotcl(socket.SIO_RCVALL, socket.RCVALL_ON)
print(self.sniffer.recvfrom(65565))
def main(self):
if os.name == 'nt':
self.sniff_packet(self.HOST, 1, socket.IPPROTO_IP)
else:
self.sniff_packet(self.HOST, 0, socket.IPPROTO_IP)
sniffObj = Sniff(input("Enter your network address: "))
sniffObj.main()
import socket
:
Traceback (most recent call last):
File "PacketSniffer.py", line 28, in <module>
sniffObj.main()
File "PacketSniffer.py", line 25, in main
self.sniff_packet(self.HOST, 0, socket.IPPROTO_IP)
File "PacketSniffer.py", line 13, in sniff_packet
self.sniffer.setsocketopt(socket.IPPROTO_IP, socket.IP_HDRINCL, 1)
AttributeError: 'socket' object has no attribute 'setsocketopt'
from socket import *
Traceback (most recent call last):
File "PacketSniffer.py", line 28, in <module>
sniffObj.main()
File "PacketSniffer.py", line 25, in main
self.sniff_packet(self.HOST, 0, socket.IPPROTO_IP)
AttributeError: type object 'socket' has no attribute 'IPPROTO_IP'
最佳答案
Why are they so different?
dir(socket)
的输出是不同的,因为
socket
在这两种情况下不是同一个对象。
>>> import socket
>>> type(socket)
<class 'module'>
>>> type(socket.socket)
<class 'type'>
>>> from socket import *
>>> type(socket)
<class 'type'>
import socket
不进入
socket
当前符号表中模块的定义;它只进入模块
socket
那里。使用前导模块名称,您可以访问定义,例如。 G。
socket.socket
(其中尾随的
socket
是套接字对象的类型)。
from socket import *
输入所有
socket
在当前符号表中,模块的定义不以下划线开头,因此,只需
socket
是套接字对象的类型。
关于sockets - 有人可以解释 "from socket import example"和 "import socket"之间的区别吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34168698/
基于 socket.io 的官方网站 http://socket.io/#how-to-use , 我找不到任何术语。socket.emit 、 socket.on 和 socket.send 之间有
我正在使用 lua-socket 3.0rc1.3(Ubuntu Trusty 附带)和 lua 5.1。我正在尝试监听 unix 域套接字,我能找到的唯一示例代码是 this -- send std
这两者有什么区别? 我注意到如果我在一个工作程序中从 socket.emit 更改为 socket.send ,服务器无法接收到消息,虽然我不明白为什么。 我还注意到,在我的程序中,如果我从 sock
使用套接字在两台服务器之间发送数据是个好主意,还是应该使用 MQ 之类的东西来移动数据。 我的问题:套接字是否可靠,如果我只需要一次/有保证的数据传输? 还有其他解决方案吗? 谢谢。 最佳答案 套接字
引自 this socket tutorial : Sockets come in two primary flavors. An active socket is connected to a
我已经安装了在端口81上运行的流服务器“Lighttpd”(light-tpd)。 我有一个C程序,它使用套接字api创建的服务器套接字在端口80上监听http请求。 我希望从客户端收到端口80上的请
这是我正在尝试做的事情: 当有新消息可用时,服务器会将消息发送给已连接的客户端。另一方面,客户端在连接时尝试使用send()向服务器发送消息,然后使用recv()接收消息,此后,客户端调用close(
如何将消息发送到动态 session 室,以及当服务器收到该消息时,如何将该消息发送到其他成员所在的同一个 session 室? table_id是房间,它将动态设置。 客户: var table_i
这是我尝试但不起作用的方法。我可以将传入的消息从WebSocket连接转发到NetSocket,但是只有NetSocket收到的第一个消息才到达WebSocket后面的客户端。 const WebSo
我正在实现使用boost将xml发送到客户端的服务器。我面临的问题是缓冲区不会立即发送并累积到一个点,然后发送整个内容。这在我的客户端造成了一个问题,当它解析xml时,它可能具有不完整的xml标记(不
尝试使用Nginx代理Gunicorn套接字。 /etc/systemd/system/gunicorn.service文件 [Unit] Description=gunicorn daemon Af
我正在使用Lua套接字和TCP制作像聊天客户端和服务器这样的IRC。我要弄清楚的主要事情是如何使客户端和服务器监听消息并同时发送它们。由于在服务器上执行socket:accept()时,它将暂停程序,
我看了一下ZMQ PUSH/PULL套接字,尽管我非常喜欢简单性(特别是与我现在正在通过UDP套接字在系统中实现的自定义碎片/ack相比),但我还是希望有自定义负载平衡功能,而不是幼稚的回合-robi
我正在编写一个应用程序,其中有多个 socket.io 自定义事件,并且所有工作正常,除了这个: socket.on("incomingImg", function(data) {
在我的应用程序中,我向服务器发送了两条小消息(类似 memcached 的服务)。在类似 Python 的伪代码中,这看起来像: sock.send("add some-key 0") ignored
很抱歉再次发布此问题,但大多数相关帖子都没有回答我的问题。我在使用 socket.io 的多个连接时遇到问题我没有使用“socket.socket.connect”方法,但我从第一次连接中得到了反馈。
我尝试使用 socket.io 客户端连接到非 socket.io websocket 服务器。但我做不到。我正在尝试像这样连接到套接字服务器: var socket = io.connect('ws
我遇到了一个奇怪的问题。在我非常基本的服务器中,我有: server.listen(8001); io.listen(server); var sockets = io.sockets; 不幸的是,套
我正在使用带套接字 io 的sailsjs。帆的版本是 0.10.5。我有以下套接字客户端进行测试: var socketIOClient = require('socket.io-client');
这个问题在这里已经有了答案: What is the fundamental difference between WebSockets and pure TCP? (4 个答案) 关闭 4 年前。
我是一名优秀的程序员,十分优秀!