批量解析IP歸屬地的批處理

聲明:禁止修改和用於非法目的,如有做的不對的地方,歡迎聯繫改正。
環境:windows10家庭版+聯網
說明:
一、ip文件:
1.一行一個有效ip地址;
2.保存爲文本;
二、解析文件:
1.vbs+批處理,vbs改造自網上,批處理自己完成;
2.保存爲後綴爲bat的文件;
3.與ip文件放一個目錄,輸入文件名只輸入文件名+後綴名;
4.不與ip文件放一個目錄,輸入路徑+文件名+後綴名;
5.調用了外部網站的接口,一次不要解析太多ip,把接口搞掛就沒得玩了(重點);
6.解析結果在ipInfo.txt;
7.解析過程中會生成vbs和txt文件,解析完都會自動刪除
8.如有殺毒軟件誤報,可加白名單
9.如有錯誤,嘗試管理員運行

@echo off
setlocal enabledelayedexpansion
cd /d %~dp0
set /p fileName=請輸入文件名如c:\addr.txt :
for /f "tokens=* delims=" %%i in (!fileName!) do (
if not "%%i" equ "" (
call :ipGPS %%i
del /q ipFind.vbs
del /q ipFind.txt
)
)
pause
exit
:ipGps
set addr=%1
echo Set objXML = CreateObject("MSXML2.ServerXMLHTTP")>ipFind.vbs
echo Set objFSO = CreateObject("Scripting.FileSystemObject")>>ipFind.vbs
echo objXML.open "GET","http://www.cip.cc/!addr!",false>>ipFind.vbs
echo objXML.send()>>ipFind.vbs
echo Set objFile = objFSO.CreateTextFile("ipFind.txt",true)>>ipFind.vbs
echo objFile.close>>ipFind.vbs
echo Set objTextFile = objFSO.OpenTextFile ("ipFind.txt", 8, True)>>ipFind.vbs
echo objTextFile.WriteLine(objXML.responseText)>>ipFind.vbs
echo objTextFile.Close>>ipFind.vbs
start /wait wscript /t:300 ipFind.vbs
set rownumber=0
FOR /F "tokens=1,2* delims=:" %%i in (ipFind.txt) do (
if !rownumber! equ 39 (
echo IP地址:!addr!  位置:%%j
echo.
echo.
echo IP地址:!addr!  位置:%%j>>ipInfo.txt
set /A rownumber=rownumber+1
) else (
set /A rownumber=rownumber+1
)
)

(全文完)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章