厲害的用Asp擷取Dll加密新聞內容_應用技巧

來源:互聯網
上載者:User
以下是代碼:
複製代碼 代碼如下:

<% 
on error resume next 
  Dim objXMLHTTP, xml 
  Set xml = Server.CreateObject("Microsoft.XMLHTTP")  
  xml.Open "GET", "http://chanye.finance.sina.com.cn/yj/2005-01-05/236914.shtml", False 
  xml.Send 
  tmpstr= xml.responseText 
  ep=clng(instr(1,tmpstr,"meta_data2"))+18 
  tmpstr=replace(tmpstr,vbcrlf,"") 
  tmpstr=replace(tmpstr,chr(9),"") 
  tmpstr=replace(tmpstr,chr(32),"") 
  mydata=mid(tmpstr,1,ep) 
  recfilen=server.MapPath("tempstr.txt") 
  set Astream=Server.CreateObject("Adodb.Stream") 
  Astream.type=2 
  Astream.Mode = 3 
  Astream.open 
  Astream.CharSet = "GB2312" 
  Astream.Position =0 
  Astream.Writetext mydata,1 
  Astream.SaveToFile recfilen,2 
  Astream.close 
  set Astream1=Server.CreateObject("Adodb.Stream") 
  Astream1.type=2 
  Astream1.Mode = 3 
  Astream1.CharSet = "GB2312" 
  Astream1.open 
  Astream1.LoadFromFile(recfilen) 
  Assp=Astream1.size 
  crttmpstr=Astream1.ReadText(Assp) 
  Astream1.close 
  sp1=clng(instr(1,crttmpstr,"meta_data1"))+16 
  ep1=clng(instr(sp1,crttmpstr,"NAME=meta_data2"))-7 
  lth1=ep1-sp1 
  newdata=mid(crttmpstr,sp1,lth1) 
%> 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"> 
<style> 
body{ 
 font-size:12px 

td{ 
 font-size:12px 

</style> 
<title>用Asp擷取Dll加密新聞內容</title> 
<table width="540" border="0" align="center" cellpadding="0" cellspacing="0"> 
  <tr> 
    <td>更新時間:<%=now  %>擷取內容長度:<%=lth1  %> 
      位元組 
注意要使用http://127.0.0.1/Ip1HtmlView.dll你得先下載這個Dll檔案,怎麼下不用多說吧?! 
      <object id=HtmlIp1View codebase=http://127.0.0.1/Ip1HtmlView.dll#version=1,0,1,14 classid=CLSID:D854FC15-D3EA-496A-B2A0-A772A3DE1D09> 
        <param name="meta_data1" value="<%=newdata  %>"> 
        <param name="meta_data2" value=""> 
        <param name="meta_data3" value=""> 
        <param name="meta_data4" value=""> 
        <param name="meta_data5" value=""> 
        <param name="meta_data6" value=""> 
        <param name="meta_data7" value=""> 
        <param name="meta_data8" value=""> 
        <param name="baseurl" value="111"> 
        <param name="random" value="111"> 
      </object></td> 
  </tr> 
</table> 
</body> 
</html>   
  對代碼的說明:之所以要使用Adodb.Stream,是因為直接取得的內容始終達不到想要的效果,ep的位置始終要比預期的長很多,而我試過用instrb,midb等函數同樣得到另人迷惑的結果,所以無奈之下出此下策,還望高手指點(哎喲,我怎麼感覺酸不溜疚的哦)。當然只針對當前地點有效,其它的適當修改就行,甚至可以直接產生頁面,並記錄到資料庫,成為自己的,用上面的東西加寫資料庫應該夠了吧。 
  要防止Dll被下載也不難,對於IIS來是說可以加個.dll的ISAPI擴充,可執行檔隨便選個Dll檔案動作限制為“空”(什麼都行,反正亂輸入就可以了。)。要是Dll不為外站工作嘛,就不敢亂說了。防止新聞被竊取對付象這樣的竊取方法,檢查request.ServerVariables("HTTP_REFERER")不是本站的哄出去就可以了。 
  另外,由於本人大學沒畢業,又是學打鐵的,所以肯定有很多垃圾的地方,請不吝指正,謝謝。
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.