我试图安装Python包dulwich:
pip install dulwich
Run Code Online (Sandbox Code Playgroud)
但我得到一个神秘的错误信息:
error: Unable to find vcvarsall.bat
Run Code Online (Sandbox Code Playgroud)
如果我尝试手动安装包,也会发生同样的情况:
> python setup.py install
running build_ext
building 'dulwich._objects' extension
error: Unable to find vcvarsall.bat
Run Code Online (Sandbox Code Playgroud) 如何在Python平台中独立地找到本地IP地址(即192.168.xx或10.0.xx)并仅使用标准库?
我有以下代码发送udp在子网中广播的数据包.
from socket import *
s=socket(AF_INET, SOCK_DGRAM)
s.setsockopt(SOL_SOCKET, SO_BROADCAST, 1)
s.sendto('this is testing',('255.255.255.255',12345))
Run Code Online (Sandbox Code Playgroud)
以下代码用于接收广播包.
from socket import *
s=socket(AF_INET, SOCK_DGRAM)
s.bind(('172.30.102.141',12345))
m=s.recvfrom(1024)
print m[0]
Run Code Online (Sandbox Code Playgroud)
问题是它没有收到任何广播包.但是,它成功接收发送到该端口的普通udp数据包.
我的机器显然收到了我测试过的广播包netcat.
$ netcat -lu -p 12345
this is testing^C
Run Code Online (Sandbox Code Playgroud)
那么问题究竟在哪里呢?
python ×3
broadcast ×1
ip-address ×1
networking ×1
pip ×1
setup.py ×1
sockets ×1
udp ×1
windows ×1