قم بتنزيل جميع المحتوى على الصفحة البعيدة مرة واحدة
استخدم الطريقة ، احفظ الكود أعلاه على سبيل المثال: downfile.asp
أدخل المتصفح:
http: // عنوانك/downfile.asp؟ url = http: //www.baidu.com/index.html
| قم بتعيين وقت المهلة server.scriptTimeout = 9999 ########################### 'ملف حفظ الوظيفة ####################### وظيفة savetofile (من ، tofile) عند استئناف الخطأ التالي قاتمة geturl ، objstream ، imgs geturl = trim (من) mybyval = gethttpstr (geturl) تعيين OBJStream = server.createBject ("Adodb.stream") objstream.type = 1 objstream.Open objstream.write mybyval objstream.savetofile tofile ، 2 objstream.close () تعيين objstream = لا شيء إذا err.number0 ثم err.clear وظيفة نهاية ########################### استبدال معالجة الأحرف ####################### وظيفة geturlencodel (url byval) 'تحويل اسم الملف الصيني قاتمة ، رمز geturlencodel = "" إذا كانت تقليم (url) = "" ثم الخروج وظيفة لأني = 1 إلى لين (URL) الكود = ASC (Mid (url ، i ، 1)) إذا كان رمز الكود> 255 ثم geturlencodel = geturlencodel & "٪" & left (hex (code) ، 2) و "٪" & right (hex (code) ، 2) آخر geturlencodel = geturlencodel & mid (url ، i ، 1) إنهاء إذا التالي وظيفة نهاية ########################### 'XML احصل على الصفحة البعيدة ####################### وظيفة gethttppage (url) عند استئناف الخطأ التالي خافت HTTP تعيين http = server.createBject ("msxml2.xmlhttp") http.Open "get" ، url ، false http.send () إذا كان http.readyState4 ثم الخروج وظيفة gethtpage = bytes2bsstr (http.responsebody) تعيين http = لا شيء إذا err.number0 ثم err.clear وظيفة نهاية وظيفة bytes2bstr (VIN) قاتمة ستريتن Dim I ، thischarcode ، nextCharcode streturn = "" لأني = 1 إلى lenb (vin) thischarcode = ASCB (MIDB (VIN ، I ، 1)) إذا كان Thischarcode streturn = streturn & chr (thischarcode) آخر NextCharCode = ASCB (MIDB (VIN ، I+1،1)) Streturn = Streturn & CHR (CLNG (thischarcode) * & H100 + Cint (NextCharCode)) i = i + 1 إنهاء إذا التالي bytes2bstr = streturn وظيفة نهاية ########################### "يحصل XML على الصفحة البعيدة لإنهائه ، وهذا جزء شائع من جميع برامج اللصوص ####################### ########################### تحلل العنوان واحصل على اسم الملف ####################### وظيفة getFilename (اسم ملف Byval) إذا instr (اسم الملف ، "/")> 0 ثم filext_a = الانقسام (اسم الملف ، "/") getFiLename = lace (fileext_a (ubund (filext_a))))) إذا instr (getFilename ، "؟")> 0 ثم getFilename = يسار (getFilename ، Instr (getFilename ، "؟")-1) إنهاء إذا آخر getFilename = اسم الملف إنهاء إذا وظيفة نهاية ########################### احصل على وظيفة الصفحة البعيدة ####################### وظيفة gethttpstr (url) عند استئناف الخطأ التالي خافت HTTP تعيين http = server.createBject ("msxml2.xmlhttp") http.Open "get" ، url ، false http.send () إذا كان http.readyState4 ثم الخروج وظيفة gethttpstr = http.responsebody تعيين http = لا شيء إذا err.number0 ثم err.clear وظيفة نهاية ########################### وظيفة معالجة FSO ، قم بإنشاء دليل ####################### الوظيفة التي تم إنشاؤها (Byval LocalPath) "البرنامج الذي ينشئ دليلًا. إذا كان هناك العديد من المستويات من الدلائل ، فإنه يخلقها مستوى واحد في وقت واحد. عند استئناف الخطأ التالي LocalPath = استبدال (LocalPath ، "/" ، "/") set fileObject = server.createObject ("scripting.filesystemObject") patharr = split (localpath ، "/") path_level = ubound (patharr) لأني = 0 إلى path_level إذا كان i = 0 ثم pathtmp = patharr (0) و "/" else pathtmp = pathtmp & patharr (i) & "/" CPATH = LEFT (PATHTMP ، LEN (PATHTMP) - 1) إذا لم يكن fileObject.folderexist التالي تعيين fileObject = لا شيء إذا err.number 0 ثم Createdir = false err.clear آخر Createdir = صحيح إنهاء إذا وظيفة نهاية وظيفة getFilext (اسم ملف Byval) filext_a = الانقسام (اسم الملف ، ".") getFileSte = lace (filext_a (ubund (filext_a)))) وظيفة نهاية ########################### 'كيف تحصل على المسار الافتراضي ####################### وظيفة getVirtual (Str ، Path ، urlhead) إذا ترك (str ، 7) = "http: //" ثم url = str غادر elseif (str ، 1) = "/" ثم start = instrev (str ، "/") إذا ابدأ = 1 ثم url = "/" آخر url = اليسار (str ، ابدأ) إنهاء إذا url = urlhead و url elseif left (str ، 3) = "../" ثم str1 = mid (str ، instrev (str ، "../")+2) AR = انقسام (str ، "../") LV = Ubund (AR) +1 AR = انقسام (المسار ، "/") url = "/" ل I = 1 إلى (Ubund (AR) -lv) url = url & ar (i) التالي url = url & str1 url = urlhead و url آخر url = urlhead & str إنهاء إذا getVirtual = url وظيفة نهاية |