标题: [技术讨论] HTA版网易图片自由下载工具 [打印本页]
作者: youxi01 时间: 2007-10-27 17:09 标题: HTA版网易图片自由下载工具
程序说明:网易图片不能直接用右键下载。本工具可以自由查询、预览、下载网易图片(gif、jpg)
使用说明:将以下代码保存为[filename].hta即可
最后附上附件- <TITLE>网易文件摄取</TITLE>
- <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
- <HTA:APPLICATION
- ID="MyhyliApp"
- APPLICATIONNAME="设置程序"
- VERSION="1.0"
- SCROLL="no"
- INNERBORDER="no"
- CONTEXTMENU="no"
- CAPTION="yes"
- SHOWINTASKBAR="yes"
- SINGLEINSTANCE="yes"
- SYSMENU="yes"
- WINDOWSTATE="normal"
- NAVIGABLE="yes"
- />
- <script language="vbscript">
- Sub Window_onLoad
- window.resizeTo 750,515
- ileft=(window.screen.width-750)/2
- itop=(window.screen.height-515)/2
- window.moveTo ileft,itop
- end sub
-
- function connect(num)
- dim imageinfo,length
- fileext=Atype.options(Atype.selectedindex).value
- imgtype=imagetype.options(imagetype.selectedindex).value
- imgtypenum=Atype.selectedindex
- url="http://mms.163.com/new_web/cm_lv2_pic.jsp?catID="&imgtype&"&ord=dDate&page="&num&"&type="&imgtypenum&"&key="
- imageurl="http://mmsimg.163.com/new_web/loaditem.jsp/type="&imgtypenum&"/path="
- set http=createobject("Microsoft.XMLHTTP")
- http.open "GET",url,False
- http.send
-
- vIn=http.ResponseBody
- strReturn = ""
- For i = 1 To LenB(vIn)
- ThisCharCode = AscB(MidB(vIn,i,1))
- If ThisCharCode < &H80 Then
- strReturn = strReturn & Chr(ThisCharCode)
- Else
- NextCharCode = AscB(MidB(vIn,i+1,1))
- strReturn = strReturn & Chr(CLng(ThisCharCode) * &H100 + CInt (NextCharCode))
- i = i + 1
- End If
- Next
- '------获取文件的地址------------'
- do
- pos=instr(strReturn,"showPic")
- pos1=instr(strReturn,"128x128")
- if pos>0 then
- length=pos1-pos
- imageinfo=mid(strReturn,pos,length)
- images=split(imageinfo,",")
- imagepath=mid(images(2),2,len(images(2))-1)&"128x128."& fileext
- '----------获取文件的名字------------'
- namepos=instr(strReturn,"\n名字:")
- namepos1=instr(strReturn,"\n人气")
- namelength=namepos1-namepos
- imagename=mid(mid(strReturn,namepos,namelength),6)
- strHTML=strHTML & "<tr><td><span class='grid2'><input id=addme type=checkbox>选定</span></td>"
- strHTML=strHTML &"<td><span class='grid3'><a onMousemove='view()' onmouseout='hideview()' href=#><img onClick='addpro()' src='"&imageurl&imagepath&"' width=30 height=20></a></span></td>"
- strHTML=strHTML & "<td><span class='grid2'>" & imagepath & "</span></td>"
- strHTML=strHTML & "<td><span class='grid2'>" & imagename & "</span></td></tr>"
- strReturn=mid(strReturn,namepos1+20)
- else
- exit do
- end if
- loop
- connect=strHTML
- end function
-
- function writeinner()
- for i=start1.value to start2.value
- strHTML=strHTML & connect(i)
- next
- strHTML="<table id='mytable' width=100% border=1 bordercolor=green>" &str1&strHTML& "</table>"
- list.innerHTML=strHTML
- infotext.innertext=infotext.innertext & "连接成功。"
- infotext.innertext=infotext.innertext & vbcrlf &vbcrlf & "从第" & start1.value & "页到第" & start2.value & "页的gif图片文件信息!"
- end function
-
- function show()
- if not (isnumeric(start2.value)) or not (isnumeric(start2.value)) then
- infotext.innertext=infotext.innertext & vbcrlf & "配置错误..."
- else
- infotext.innertext="正在连接..."
- window.settimeout "writeinner()",200
- end if
- end function
- sub view()
- strHTML1="<img src='" &window.event.srcElement.src &"' width='140' height='140'>"
- preview.runtimeStyle.pixelLeft=window.event.x+5
- preview.runtimeStyle.pixelTop=window.event.y+5
- preview.style.visibility="visible"
- preview.innerHTML=strHTML1
- end sub
-
- sub hideview()
- preview.style.visibility="hidden"
- end sub
-
- sub addpro()
- set obj=window.event.srcElement.parentelement.parentelement.parentelement.parentelement
- if obj.cells(0).children(0).children(0).checked=false then
- obj.cells(0).children(0).children(0).checked=true
- else
- obj.cells(0).children(0).children(0).checked=false
- end if
- end sub
-
- sub tb_del()
- set obj=document.all.namedItem("mytable")
- if obj.rows.length>2 then
- Set tagID = document.all.namedItem("addme") '获取对象ID:delcheck'
- for each otag in tagID
- if otag.checked then
- objrow=otag.parentelement.parentelement.parentelement.rowindex '获取对象的行序数;'
- obj.deleteRow(objrow) '删除该项;'
- end if
- next
- else
- msgbox "才一项你都删,哪有这样的?!",0,"删除提醒"
- exit sub
- end if
- end sub
-
- sub selectall()
- set obj=document.all.namedItem("mytable")
- set objcheck=document.all.namedItem("sall")
- Set tagID = document.all.namedItem("addme") '获取对象ID:addme'
- for each otag in tagID
- otag.checked=objcheck.checked
- next
- end sub
-
- sub download()
- Set fso = CreateObject("Scripting.FileSystemObject")
- If not (fso.FolderExists("★网易下载图片★")) Then
- fso.createfolder("★网易下载图片★")
- end if
-
- set http=createobject("Microsoft.XMLHTTP")
- set obj=document.all.namedItem("mytable")
- Set tagID = document.all.namedItem("addme") '获取对象ID:delcheck'
- for each otag in tagID
- if otag.checked then
- set objrow=otag.parentelement.parentelement.parentelement '获取对象的行;'
- downurl=objrow.cells(1).children(0).children(0).children(0).src
- filename=objrow.cells(3).children(0).innertext
- http.open "GET",downurl,False
- http.send
-
- set aso=createobject("ADODB.Stream")
- aso.type=1
- aso.open
- aso.write http.ResponseBody
- aso.savetofile "★网易下载图片★\" & filename & "."&fileext,2
- aso.close
-
- end if
- next
- infotext.innertext=infotext.innertext & vbcrlf & "文件下载成功。"
- infotext.innertext=infotext.innertext & vbcrlf & "文件保存在:" & vbcrlf &"“★网易下载图片★”下"
- end sub
-
- sub downloadfile()
- infotext.innertext= "正在下载文件...." '"
- window.settimeout "download()",200
- end sub
-
- sub changevalue()
- AID=array("130","112","67","14","122","158")
- PID=array("90","91","89","34","198","200")
- if Atype.selectedindex=0 then
- for i=0 to 5
- imagetype.options(i+2).value=PID(i)
- next
- else
- for i=0 to 5
- imagetype.options(i+2).value=AID(i)
- next
- end if
- end sub
- </script>
- <style type="text/css">
- <!--
- .TT1 { font-family: "隶书";
- font-size: 24px;
- font-weight: bold;
- }
- .title {
- }
- .info {
- font-family: "隶书";
- font-size: 16px;
- color: #FF0000;
- font-weight: bold;
- }
- .separator { width:100%;
- margin:2px;
- margin-top:-4px;
- height:12px;
- overflow:hidden;
- }
- .list { height: 80px;
- width: 100%;
- background-color: #E3EFF9;
- }
- .s_button {
- background-color: #FFCC99;
- position: static;
- text-align: center;
- vertical-align: middle;
- padding: 1px;
- color: #0033CC;
- border: 1px solid #996633;
- width: 100%;
- }
- .grid1 {
- font-family: "隶书";
- font-size: 16px;
- background-color: #006699;
- background-position: center center;
- text-align: center;
- vertical-align: middle;
- height: 100%;
- width: 100%;
- color: #00FF99;
- }
- .grid2 {
- font-family: "宋体";
- text-align: left;
- vertical-align: middle;
- height: 100%;
- width: 100%;
- font-size: 12px;
- }
- .grid3 {
- text-align: center;
- vertical-align: middle;
- height: 100%;
- width: 100%;
- }
- .preview {
- position:absolute;
- width:140px;
- height:140px;
- z-index:1;
- left: 301px;
- top: 61px;
- overflow: visible;
- border-top-color: #FF0000;
- border-right-color: #FF0000;
- border-bottom-color: #FF0000;
- border-left-color: #FF0000;
- background-color: #FF9966;
- margin: 1px;
- padding: 1px;
- visibility: hidden;
- }
- .STYLE2 {
- color: #00FF00;
- font-weight: bold;
- font-family: "隶书";
- font-size: 14px;
- }
- -->
- </style>
- <div class="separator">
- <hr>
- </div>
- <table width="100%" height="4%" border="0" cellspacing="0" cellpadding="0">
- <tr>
- <td colspan="2" align="center" valign="middle" id=menubar onselectstart="return false"><span class="TT1" id="consume">网易图片文件一览表</span> </td>
- </tr>
- </table>
- <div class="separator">
- <hr>
- </div>
- <table width="100%" height="415" border="1">
- <tr>
- <td width="81%" height="16" rowspan="8" valign="top" bgcolor="#FFFFFF" style="border-style: solid; border-color: #000080"><div class="info" id=list style="width:100%;height:405; overflow-y: auto; border: solid 1 gray;"></div></td>
- <td height="16" colspan="2" align="center" valign="middle" bordercolor="#FF0000" bgcolor="#000080" style="border-style: solid; border-color: #000080"><div class="preview" id="preview">
- <p> </p>
- </div>
- <span class="STYLE2"> 信息公布</span></td>
- </tr>
- <tr>
- <td height="182" colspan="2" align="left" valign="top" bgcolor="#FFFFFF" class="info" style="border-style: solid; border-color: #000080"><div class="info" id="infotext" style="width:100%;height:177; overflow-y: auto">
- <p>本程序可以自由下载网易图片..</p>
- <p> </p>
- </div></td>
- </tr>
- <tr>
- <td height="33" colspan="2" align="center" valign="middle" bgcolor="#FFFFFF" class="info" style="border-style: solid; border-color: #000080"><input name="add" type="submit" class="s_button" id="add" onclick="show()" value="取文件信息" /></td>
- </tr>
-
- <tr>
- <td height="33" align="center" valign="middle" bgcolor="#FFFFFF" style="border-style: solid; border-color: #000080"><select name="Atype" id="Atype" onchange="changevalue()">
- <option value="jpg">彩图</option>
- <option value="gif">动画</option>
- </select></td>
- <td height="33" align="center" valign="middle" bgcolor="#FFFFFF" style="border-style: solid; border-color: #000080"><select name="imagetype" id="imagetype">
- <option selected="selected">图片类型</option>
- <option>全部</option>
- <option value="90">绝色风光</option>
- <option value="91">四季花语 </option>
- <option value="89">海底世界 </option>
- <option value="34">绝色美女 </option>
- <option value="198">都市丽人</option>
- <option value="200">手绘美女</option>
- </select></td>
- </tr>
- <tr>
- <td height="33" colspan="2" align="center" valign="middle" bgcolor="#FFFFFF" style="border-style: solid; border-color: #000080"><input name="del2" type="submit" class="s_button" id="del2" onclick="downloadfile()" value="下载选定项" /></td>
- </tr>
- <tr>
- <td height="33" colspan="2" align="center" valign="middle" bgcolor="#FFFFFF" style="border-style: solid; border-color: #000080"><input name="del" type="submit" class="s_button" id="del" onclick="tb_del()" value="删除选定项" /></td>
- </tr>
- <tr>
- <td width="5%" height="25" align="center" valign="middle" bgcolor="#000080" class="STYLE2" style="border-style: solid; border-color: #000080">从 </td>
- <td width="14%" bgcolor="#FFFFFF" valign="middle" align="center" style="border-style: solid; border-color: #000080"><a title="在此处输入起始页数"><input name="start1" type="text" id="start1" value="1" size="10" />
- </a></td>
- </tr>
-
- <tr>
- <td height="26" align="center" valign="middle" bgcolor="#000080" class="STYLE2" style="border-style: solid; border-color: #000080">到</td>
- <td height="26" align="center" valign="middle" bgcolor="#FFFFFF" style="border-style: solid; border-color: #000080"><a title="在此处输入结束页数"><input name="start2" type="text" id="start2" size="10" value="1"/>
- </a></td>
- </tr>
- </table>
- <script language="vbscript">
- public fileext
- str1="<tr><td><span class='grid1'><input type=checkbox id='sall' onclick='selectall()'>全都选</span></td>"
- str1=str1& "<td><span class='grid1'>预览</span></td>"
- str1=str1 & "<td><span class='grid1'>文件路径</span></td>"
- str1=str1 & "<td><span class='grid1'>文件名称</span></td></tr>"
复制代码
链接: https://pan.baidu.com/s/1mFNe5yXB28ELmyA3oy1nyQ?pwd=k9ke
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |