#利用 Python 的 SimpleHTTPServer 实现内网传输
##吐槽:
经常想向ipad发张图,要打开这个打开那个,很烦。虽然说有QQ等工具,但还是不够便利。
不如直接把当前目标变成一个网站,ipad上直接访问不就行了。
正好 python 就提供了这个功能。可以一条命令就创建一个http服务。 并把这个功能加在右键上,这样只要右键一点。就可以在其它设备上像浏览网页一样访问这个目录了。
##开工: 现在我们就来利用 Python 的 SimpleHTTPServer 开启一个临时的Web服务,实现 本本向:平板、手机等设备传送文件。
我们要用的工具 python,如果没有的话自己装上。(记得还要加进环境变量,具体怎么操作不会的话度娘吧)
###方案一:直接把命令添加到右键
在注册表里执行2条命令
- 首先用记事本创建一个文件,把下面内容粘贴进去。
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Directory\Background\shell\1Python SimpleHTTPServer]
@="SimpleHTTPServer"
"Icon"="%SystemRoot%\\system32\\shell32.dll,-14"
[HKEY_CLASSES_ROOT\Directory\Background\shell\1Python SimpleHTTPServer\command]
@="cmd /c \"start http://localhost/\"&&python.exe -m SimpleHTTPServer 80"
保存为 **添加SimpleHTTPServer到右键.reg ** 然后双击导入就行了。
如果不希望自动打开浏览器请去掉这段\"start http://localhost/\"&&
这段注册表内容,为我们添加了一个右键菜单。
####提示
别外如果你本机装了php环境,并且要你想测试的是php文件。那么可以把这句python.exe -m SimpleHTTPServer 80
改成这句:php.exe -S 0.0.0.0:80
自己在目录下打开 CMD 试试python.exe -m SimpleHTTPServer 80
##如果提示 No module named SimpleHTTPServer 那就换成:python -m http.server 80
###方案二:点击右键菜单后调用一个脚本
如果你需要执行更复杂的功能,直接调用一条命令肯定是不够的,那就让右键直接调用一个脚本比如 bat 或 vbs 等等。
然后可以在 bat 或 vbs 这些脚本里去实现你要的具体功能。
- 首先用记事本创建一个文件,把下面内容粘贴进去。
start http://localhost/
python.exe -m SimpleHTTPServer 80
保存为 SimpleHTTPServer.bat 这样我的批处理脚本就OK了。
放在 D盘根目录(这个按你个人需要。放在哪都可以,只要下面的注册表中对应的地址也要跟着换)
如果不希望自动打开浏览器请去掉这行start http://localhost/
- 接着再用记事本创建一个文件,把下面内容粘贴进去。
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Directory\Background\shell\1Python SimpleHTTPServer]
@="SimpleHTTPServer"
"Icon"="%SystemRoot%\\system32\\shell32.dll,-14"
[HKEY_CLASSES_ROOT\Directory\Background\shell\1Python SimpleHTTPServer\command]
@="\"D:\\SimpleHTTPServer.bat\""
保存为 **添加SimpleHTTPServer到右键.reg ** 然后双击导入就行了。
注意 斜杠和引号都要在前面加上转义符 \ 来输出,所以上面注册表文件中的"D:\SimpleHTTPServer.bat"
就变成了 "\"D:\\SimpleHTTPServer.bat\""
##用法:
在要传送的文件所在的目录,点击右键SimpleHTTPServer
就会出现命令行界面:我是在 D:\Python27 目录下操作的,所以现在这个目录就成网站的根目录了。
现在只要是在同一个局域网的设备都可以访问了。
##查看内网 IP:
如果不知道本机的内网 IP 可以这么查寻:
- WIN + R 打开运行窗口
- 输入 cmd 打开命令行
- 在黑框框中输入 ipconfig 回车
- 就可以看到本机的 IP了 (IPv4 地址)