Сейчас в Интернете есть много популярных программ воров, в том числе воры новостей, музыкальные воры и загрузки воров. Так как они это делают? Я дам краткое введение ниже, надеясь, что оно будет полезно для всех веб -мастеров.
(I) Принцип
Программа THIEF фактически вызывает веб -страницы на других веб -сайтах через компонент XMLHTTP в XML. Например, в программе «Новости вора» многие из них называют страницы новостей Сины, и некоторые замены вносятся в HTML, и реклама также отфильтрована. Преимущества использования программы THIF: нет необходимости поддерживать веб -сайт, потому что данные в программе THIEF поступают с других веб -сайтов, и он будет обновлен по мере обновления веб -сайта; он может сохранить ресурсы сервера. Как правило, программа THIEF имеет только несколько файлов, и весь контент веб -страницы поступает с других веб -сайтов. Недостатки включают: нестабильные. Если целевые ошибки веб -сайта, программа также будет ошибочена. Более того, если целевой веб -сайт обновляется и поддерживается, программа THIEF также должна быть изменена соответственно; Скорость, поскольку это удаленный вызов, скорость определенно медленнее, чем чтение данных на локальном сервере.
(Ii) Пример
Вот краткое объяснение применения Xmlhttp в ASP
Код: <%
'Общие функции
1. Введите адрес веб -страницы назначения URL -адреса, и возвращаемое значение gethttpage - это HTML -код веб -страницы назначения.
functiongethttppage (url)
Dimhttp
sethttp = server.createObject ("msxml2.xmlhttp"
Http.open "Get", url, false
Http.send ()
ifhttp.readystate <> 4then
Выходная функция
эндиф
gethttppage = bytestobstr (http.responsebody, "GB2312"
SETTHTTP = ничего
iferr.number <> 0thenerr.clear
конечная функция
2. Преобразовать Lanma, напрямую вызовите веб -страницу с китайскими именами с xmlhttp, вы получите Lanma, которая может быть преобразована через компонент Adodb.stream.
Functionbytestobstr (тело, cset)
Dimobjstream
setObjStream = server.createObject ("adodb.stream"
objstream.type = 1
objstream.mode = 3
objstream.open
objstream.writebody
objstream.position = 0
objstream.type = 2
objstream.charset = cset
Bytestobstr = objstream.readtext
objstream.close
setobjstream = ничего
Конечная функция
'Следующее - попытаться вызвать HTML -контент http://www.998w.net/class/
Dimurl, Html
Url = "http://www.998w.net/class/"
Html = gethttppage (url)
Response.writehtml
%>
--------------------------------------------------------------
Код:
'Код считывает удаленные файлы с XMLHTTP
<%
Response.buffer = true
Dimobjxmlhttp, xml
Setxml = server.createObject ("microsoft.xmlhttp"
xml.open "Get", "http://www.998w.net/down/998w1.0.rar", false
Xml.send
'AddaHeaderTogiveItafilEname:
Ответ.
"Приложение; файл имени = mitchell-pres.zip"
'Укажите thecontenttypetotell thebrowserwhattodo: