标题: p-proxy v2.0.cmd [http代理查找、设置、验证器]
[打印本页]
作者: vkill
时间: 2006-12-26 06:15
标题: p-proxy v2.0.cmd [http代理查找、设置、验证器]
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:: p-proxy.cmd V2.0 by:vkill 2007/01/01
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
@echo off
:000
call :happy
cls
call :help_
echo (以后可以/?查看帮助)
echo.
set var=
set/p var= 下次运行是否继续显示此帮助[Y/N]:
if /i %var%*==* goto 000
if /i %var%*==Y* goto start
if /i %var%*==N* goto 写第一行
goto 000
:写第一行
cd.>>%0 ||(echo 你没有本目录的写入权限&pause>nul&goto :eof)
echo %~p0|find /i "Rar$">nul &&(echo 请把本程序解压到文件夹下使用&pause>nul&goto :eof)
for /f "tokens=*" %%a in ('echo goto start^&more^<%0') do (
if not defined vk (>%0 echo %%a&set vk=vkill) else >>%0 echo %%a
)
cls
echo 跳过帮助已设置完毕,重新运行本程序生效,任意键退出
pause>nul
goto :eof
:start
@echo off
if %~1*==/?* goto h
if %~1*==-?* goto h
if %~1*==/h* goto h
if %~1*==-h* goto h
goto start_2
:h
call :help_
puase>nul
goto :eof
:start_2
::conf
::是否需要网络支持
set "net_on=y"
set "search_url=http://www.baidu.com/s?wd="
set "search_关键字=代理ip"
set "tools_url=http://www.vkill.net/tools/"
set "tools_name=wget.exe;sed.exe;gawk.exe;HtoX32c.exe"
set "txts=ip-port.txt;url.txt;awk.conf"
::下载baidu搜索到前1-10个页面
set "top=10"
set "temp=test.tx"
cls
::test
echo %~p0|find /i "Rar$">nul &&(echo 请把本程序解压到文件夹下使用&pause>nul&goto :eof)
if not %temp%*==* (cd.>>%0 ||(echo 你没有本目录的写入权限&pause>nul&goto :eof))
for %%? in (%txts%) do (if not exist %%? (echo 缺少文件%%?&pause>nul&goto :eog))
if %net_on%*==y* (ping -n 1 www.baidu.com>nul 2>nul||(echo 网络不通,请先检查网络&pause>nul&goto :eof))
md %temp%>nul 2>nul
PUSHD %temp%
call :del_
:down_tools
title [1/4]依赖文件完整性检查开始 by:vkill
set "down_ok=y"
if not "%tools_name%*"=="*" (
for %%? in (%tools_name%) do (
if *%%~$PATH:?==* if not exist ..\%%? (
set "down_ok=n"
echo 程序所依赖文件%%?缺失,已自动开始下载
if not exist iget.vbs call :iget.vbs_
iget.vbs "%tools_url%%%?" "..\%%?"
move "..\%%?" %windir%>nul 2>nul
echo 文件%%?下载完毕
)
)
)
if [%down_ok%]==[n] goto down_tools
::参数
if /i [%~1*]==[-u*] (set "var_1=..\url.txt"&goto acquisition_s)
if /i [%~1*]==[-v*] (if [%~2*]==- (set "var_2=..\ip-port.txt"&goto validate_s) else (goto validate_o))
:acquisition_s
title [2/4]获取代理地址开始 by:vkill
cls
echo 请稍候......
if [%~1*]== - set "var_1=b%temp%"
if [%var_1%*]==[..\url.txt*] if not exist %var_1% (echo 缺少文件%var_1%&pause>nul&goto :eof)
if [%~1*]== - (
:down_index
wget -q -O "a%temp%" "%search_url%%search_关键字%"
:find_top
sed -n "/<DIV id=ScriptDiv><\/DIV>/,/<br clear=all>/p" a%temp%|sed "s/this.href,/\n/g"|sed "s/.*)\x22 href=\x22//;s/\x22 target=\x22.*//"|sed "/^http:\/\//!d"|more>%var_1%
)
:down_top
md htmls>nul 2>nul
set n=1
setlocal enabledelayedexpansion
for /f "eol=; tokens=*" %%? in (%var_1%) do (
if !n!==%top% goto end_down_top
echo 正在获取代理地址页面!n!
wget -q -t 1 --directory-prefix=htmls "%%?"
set/a "n=n+1"
)
:end_down_top
endlocal
::htm2txt
HtoX32c.exe /ip htmls\*.*>c%temp%
gawk "/[1-9]*\.[1-9]*\.[0-9]*\.[0-9]/" c%temp%|gawk -f ..\awk.conf|more>d%temp%
goto validate_s
:validate_s
title [3/4]验证多个代理地址开始 by:vkill
cls
if /i [%~1*]==[-u*] (set var_2=d%temp%)
if [%~1*]== - (set var_2=d%temp%)
if [%var_2%*]==[..\ip-port.txt*] if not exist %var_2% (echo 缺少文件%var_2%&pause>nul&goto :eof)
for /f "eol=; tokens=1,2 delims= " %%a in (%var_2%) do (
set/p=正在验证%%a:%%b <nul
wget -q -T 3 -t 1 -e "http_proxy=%%a:%%b" http://www.baidu.com -O - >nul 2>nul &&(echo %%a:%%b>>e%temp%&set/p=→ok <nul)
echo.
)
goto :shezhi
:validate_o
title [3/4]验证单个代理地址开始 by:vkill
cls
echo %~2|findstr "^[1-9]*\.[1-9]*\.[0-9]*\.[0-9]*\:[0-9]*$">nul||(echo 待测试的%~2不是有效的代理地址&pause>nul&goto :eof)
set/p=正在验证%~2 <nul
wget -q -T 3 -t 1 -e "http_proxy=%~2" http://www.baidu.com -O - >nul 2>nul &&(echo %~2>>e%temp%&set/p=→ok <nul)
echo.
)
goto :shezhi
:shezhi
title [4/4]设置、修改、删除代理 by:vkill
cls
findstr . e%temp%>nul 2>nul ||(echo 没有有效的代理&pause>nul&goto :end)
findstr /N . e%temp%>..\proxy.txt
call :del_
copy /Y ..\proxy.txt proxy.txt>nul 2>nul
sed -n $= proxy.txt|more>%temp%
set/p max_n=<%temp%
reg query "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings"|findstr /i " Proxyserver " |sed "s/[^0-9.:]//g"|more>%temp%
findstr . %temp%>nul &&(set/p y_proxy=<%temp%) ||(set y_proxy=空)
reg query "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings"|findstr /i " ProxyEnable " |sed "s/.* 0x1 //;s/*[ \t]//g"|more>%temp%
findstr . %temp%>nul &&(set y_on=关闭)||(set y_on=打开)
set/a "ye=%max_n%/10"
set/a "ye=%ye%+1"
set n1=1
:liebiao
if %n1% lss 1 set "n1=1"
set/a n2=%n1%+9
cls
echo.
echo 当前代理设置情况:[状态→%y_on% 地址→%y_proxy%]
echo ________________________________________________________________________________
echo 检测完有效的代理列表如下(行号-地址)
echo.
sed "%n1%,%n2%!d;s/^/ /;s/:/-/" proxy.txt
echo.
set/p= <nul
if [1] lss [%n1%] (set/p=[U]上一页 <nul ) else (set/p= <nul )
set/p=共%ye%页 <nul
if not [%max_n%] lss [%n2%] (set/p=下一页[N] <nul) else (set/p= <nul)
echo.
echo ________________________________________________________________________________
set xz=
set /p xz= 请输入操作代码或你要设置为当前ie代理的行号:
echo.
if "%xz%"=="" (echo 无效动作 & pause>nul && goto liebiao)
if /i "%xz%"=="u" (set/a "n1=%n1%-10" &goto liebiao)
if /i "%xz%"=="n" (set/a "n1=%n1%+10" &(if %max_n% lss %n1% (set/a "n1=%n1%-10"))&goto liebiao)
echo %xz%|findstr "^[0-9]*$" >nul||(echo 无效动作 & pause>nul && goto liebiao)
findstr "^%xz%:" ..\proxy.txt>nul||(echo 不是有效的行数 & pause>nul && goto liebiao)
:xz_ok
sed "/^%xz%:/!d;s/^%xz%://" ..\proxy.txt|more>%temp%
set/p proxy_ip=<%temp%
@reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /t REG_DWORD /d 1 /f
@reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v Proxyserver /d %proxy_ip% /f
:hxz
cls
echo ________________________________________________________________________________
echo 你已经成功将%proxy_ip%设置为当前ie的代理地址
echo.
echo 重新打开ie生效
echo.
echo a 重新选择 ; b 取消当前代理设置 ; c 保存退出
echo ________________________________________________________________________________
set hxz=
set /p hxz= 请输入操作代码:
if "%hxz%"=="" echo 无效动作 & pause && goto hxz
if "%hxz%"=="a" goto shezhi
if "%hxz%"=="c" goto end
if "%hxz%"=="b" goto quxiao
goto hxz
:quxiao
@reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /t REG_DWORD /d 0 /f
@reg delete "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v Proxyserver /f
echo 取消当前代理设置成功,重新打开ie生效,按任意键退出&pause>nul
:end
call :del_
:end
popd
goto :eof
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
::所有call
:help_
title help
mode con lines=30
echo ________________________________________________________________________________
echo 用途:
echo http代理查找、设置、验证器 by:vkill
echo.
echo 使用方法:(推荐使用-u)
echo 1.无参数
echo 将自动查找到"baidu"关键词"代理ip"前^<10位的页面中所有代理的地址并验证其可用性
echo 2.-v
echo 将验证ip-port.txt文件中所有代理地址其可用性
echo 3.-v 1.1.1.1:80
echo 将验证1.1.1.1:80代理地址其可用性
echo 4.-u
echo 将验证url.txt文件中所有网页中的代理地址的其可用性,请按需求自行修改网页
echo.
echo 程序依赖文件:(详细用法http://www.vkill.net/tools.html页面下载相应文件)
echo 1.wget.exe 1.10.2 验证代理,下载网页
echo 2.sed.exe 4.0.7x 文本文字处理
echo 3.gawk.exe 3.1.5 文本文字处理
echo 4.HtoX32c 1.7.3 htm2txt
echo.
echo [注:初次使用可能要用到iget.vbs,杀毒软件有可能误报]
echo ________________________________________________________________________________
goto :eof
:echo_test
goto :eof
:del_
del /f/q *.*>nul 2>nul
del /f/q htmls\*.*>nul 2>nul
goto :eof
:iget.vbs_
>iget.vbs echo x=LCase(WScript.Arguments(1))
>>iget.vbs echo y=LCase(WScript.Arguments(0))
>>iget.vbs echo Set xPost=CreateObject("Microsoft.XMLHTTP")
>>iget.vbs echo xPost.Open "GET",y,0
>>iget.vbs echo xPost.Send()
>>iget.vbs echo Set sGet=CreateObject("ADODB.Stream")
>>iget.vbs echo sGet.Mode=3
>>iget.vbs echo sGet.Type=1
>>iget.vbs echo sGet.Open()
>>iget.vbs echo sGet.Write(xPost.responseBody)
>>iget.vbs echo sGet.SaveToFile x,2
goto :eof
:happy
echo happy new year !!!
ping -n 2 127.1>nul 2>nul
goto :eof
[
Last edited by vkill on 2007-1-3 at 10:56 PM ]
附件
1:
p-proxy v1.0.rar (2006-12-26 06:15, 2.81 K, 下载附件所需积分 1点
,下载次数: 133)
附件
2:
p-proxy v2.0.rar (2007-1-2 04:55, 3.91 K, 下载附件所需积分 1点
,下载次数: 180)
作者: 9527
时间: 2006-12-26 06:18
可见兄研究这个P已经很长时间啦,呵呵,这么晚才放出来,哈哈哈,顶,不错,加分
作者: vkill
时间: 2006-12-26 06:20
呵呵,9527,测试下,看是否好用,我2003测试ok
作者: electronixtar
时间: 2006-12-26 06:27
顶!~~
作者: electronixtar
时间: 2006-12-26 06:27
建议改标题,把帖子内容说明白点
作者: vkill
时间: 2006-12-26 06:32
Quote: |
Originally posted by electronixtar at 2006-12-26 06:27:
建议改标题,把帖子内容说明白点 |
|
ok ,改了
作者: vkill
时间: 2006-12-26 06:45
要是把sed的都改为gawk就可以少个外部工具了,可惜gawk我还不熟,希望无奈何斑竹来看看
作者: lxmxn
时间: 2006-12-26 06:54
Quote: |
因为第一次使用需要iget.vbs,所以如果开了杀毒最好关闭使用 |
|
果然,一下载卡巴就出来狂叫了……
附件
1:
proxy.BMP (2006-12-26 06:54, 363.33 K, 下载附件所需积分 1点
,下载次数: 10)
作者: ccwan
时间: 2006-12-26 06:57
这可是圣诞大餐了,也会报有毒。^_^
作者: HUNRYBECKY
时间: 2006-12-26 23:08
太牛了,几天没有来,真是最好的圣诞礼物。谢谢你这个圣诞老人。
作者: vkill
时间: 2006-12-27 07:03
Quote: |
Originally posted by ccwan at 2006-12-26 06:57:
这可是圣诞大餐了,也会报有毒。^_^ |
|
晕啊~不是有毒,iget.vbs这东东都抱,也没有办法了
作者: ccwan
时间: 2007-1-3 02:11
楼主已更新了!大家试试2.0版的效果如何好吗?
作者: flamey
时间: 2007-1-3 04:42
非常好!
卡巴太烂了,换个杀毒软件吧!(注:经常的误报,是病毒的不报,不是病毒的就报,就象我们单位的防盗器!)
作者: 雨露
时间: 2007-1-3 09:12
楼主的程序依赖文件:(详细用法
http://www.vkill.net/tools.html页面下载相应文件)
1.wget.exe 1.10.2 验证代理,下载网页
2.sed.exe 4.0.7x 文本文字处理
3.gawk.exe 3.1.5 文本文字处理
4.HtoX32c 1.7.3 htm2txt
下载解压后发现gsed_4.0.7x和wget_1.10.2文件夹内含有-----隐藏的系统属性的_desktop.ini文件,不会是楼主曾经中过维金病毒吧?
作者: 雨露
时间: 2007-1-3 09:15
Quote: |
Originally posted by flamey at 2007-1-3 04:42:
非常好!
卡巴太烂了,换个杀毒软件吧!(注:经常的误报,是病毒的不报,不是病毒的就报,就象我们单位的防盗器!) |
|
瑞星2007也报毒!Trojan.DL.VBS.Agent.c
作者: vkill
时间: 2007-1-3 22:57
可能吧,不过报是iget.vbs的问题
作者: lixinwu
时间: 2007-1-26 08:06
如果那几个工具不复制到windows目录下就更好了,我喜欢绿色版
作者: zouzhxi
时间: 2007-1-27 04:17
卡巴斯基反病毒6.0
The requested URL
http://www.cn-dos.net/forum/atta ... fc58&download=1 is infected with Trojan-Downloader.JS.gen virus
作者: 3391617
时间: 2007-3-10 04:01
~。~
[
Last edited by 3391617 on 2007-3-9 at 04:17 PM ]
作者: bobyang
时间: 2007-3-19 07:15
谢谢,是个好东西呀!
作者: shanice
时间: 2007-3-27 05:43
asdasd
作者: bjsh
时间: 2007-3-27 09:04
顶
Quote: |
@echo off
if %~1*==/?* goto h
if %~1*==-?* goto h
if %~1*==/h* goto h
if %~1*==-h* goto h |
|
问为啥 用 %~1 而不是%1 什么意思啊?有什么效果啊
作者: bjsh
时间: 2007-3-27 22:17
顶到答案出来
作者: wydos
时间: 2007-3-27 23:46
好东西,收藏
作者: peterdocter
时间: 2007-3-27 23:54
本论坛不是用有两个vbscript加编码高手吗?请他们为你的iget.vbs加一个编码,可能就可以躲过杀毒误报!
作者: assad
时间: 2007-5-15 22:19
不错,谢谢拉!!!
作者: vkill
时间: 2007-5-15 22:20
Quote: |
Originally posted by bjsh at 2007-3-27 09:04:
顶
问为啥 用 %~1 而不是%1 什么意思啊?有什么效果啊 |
|
呵呵,现在你已经很清楚了吧!哈哈~刚刚一人顶起我就顺便回复下
作者: teste
时间: 2007-6-28 00:04
强人啊
作者: qingyuan0o0
时间: 2007-7-8 20:24
不知道NOD32会不会报毒..
作者: lookdos
时间: 2007-7-11 11:03
ding
作者: zerocq
时间: 2007-7-11 14:13
sed真是厉害啊,看来得认真看看了
作者: xyq3312
时间: 2007-8-20 05:09
不错,支持
作者: czwlay
时间: 2007-10-21 19:55
太感谢楼主了.
我能加我的Q(647739)吗,我对脚本有浓厚的兴趣.
作者: honghunter
时间: 2007-11-22 01:32
期待再出一个更新版本。
最好能是绿色版本,嘿嘿。
作者: hteng
时间: 2007-11-27 15:41
太感谢楼主了!!真是厉害啊
作者: aa2206
时间: 2007-12-6 03:12
没有iget.vbs
作者: shaobing
时间: 2008-1-8 21:07
谢谢.............
作者: yaoxin1588
时间: 2008-1-10 10:21
感谢,下载学习!
![](images/smilies/biggrin.gif)
作者: jethroso
时间: 2008-11-20 20:18
NOD32报毒厉害!