Programme d'acquisition Web? Crawler Web? Programme Xiaolulun? Peu importe comment vous l'appelez, ce type de programme est assez largement utilisé. Cet article ne discute pas des questions de droit d'auteur ou de morale causées par l'utilisation de ce programme, mais ne discute que de la mise en œuvre de ce programme dans l'environnement ASP + VBScript :-)
Connaissances de préparation: En plus des connaissances générales ASP + VBScript, vous devez également comprendre les objets XMLHTTP et les objets d'expression réguliers. L'objet XMLHTTP est le protagoniste d'Ajax, qui est actuellement sous les projecteurs; Et après avoir appris des expressions régulières, vous n'avez plus à vous soucier de traiter avec des chaînes complexes.
Le gadget Regex est très utile lors de la rédaction et du débogage des expressions régulières.
Table des matières
Ramper une page Web distante et l'enregistrer localement
Amélioration: gérer le code brouillé
Téléchargez des photos (et d'autres fichiers) de pages Web distantes en même temps
Amélioré: détecter les URL réelles
Amélioration: Évitez les téléchargements répétés
Exemples pratiques (prendre **** comme exemple)
Page de liste d'analyse
Conseils de page de contenu
Analyser la page précédente, page suivante dans la page de contenu
Sujet avancé: Conversion UTF-8 et GB2312
Sujets plus avancés: ramper après la connexion, contrefaçon du client
Les procédures de collecte que vous avez
Lien original: http://gwx.showus.net/blog/article.asp?id=229
1. Explorez une page Web distante et enregistrez-la sur local
'Pour le débogage, les résultats intermédiaires seront vérifiés plusieurs fois plus tard
Dimindebug: indebug = true
Subd (str)
Ifindebug = falsethenexitsub
Response.Write ("<DivStyle = 'Color: # 003399; Border: solide1px # 003399; arrière-plan: # eef7ff; margin: 1px; police-taille: 12px; padding: 4px;'>")
Response.Write (Str & "</div>")
Réponse.flush ()
Fin
'Processus: Save2file
'Fonction: Enregistrez du texte ou du flux d'octet en tant que fichier
'Paramètre: SCONTENT pour enregistrer le contenu
'SFILE est enregistré dans un fichier, comme "Fichiers / ABC.htm"
'Est-ce que Btext est un texte ou non
'Écrire fait l'écraser le fichier existant
Subsave2file (Scontent, Sfile, BText, Boverwrite)
Calld ("Save2File:" + sfile + "* si le texte:" & btext)
DimsaveOption, SypeOption
If (boverwrite = true) thensaveOption = 2ELSESAVEOPTION = 1
If (btex
Setads = server.createObject ("adodb.stream")
Withads
.Type = SypeOption
.Ouvrir
If (btext = true) alors.writeTextSccontentelse.WritesContent