本文实例讲述了php中Snoopy类用法。分享给大家供大家参考。具体分析如下:
这里演示了php中如何通过Snoopy抓取网页信息
snoopy类的下载地址:http://sourceforge.net/projects/snoopy/
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
/*
You need the snoopy.class.php from
http://snoopy.sourceforge.net/
*/
include ( "snoopy.class.php" );
$snoopy = new Snoopy;
// need an proxy?:
//$snoopy->proxy_host = "my.proxy.host";
//$snoopy->proxy_port = "8080";
// set browser and referer:
$snoopy ->agent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)" ;
$snoopy ->referer = "http://www.jonasjohn.de/" ;
// set some cookies:
$snoopy ->cookies[ "SessionID" ] = '238472834723489' ;
$snoopy ->cookies[ "favoriteColor" ] = "blue" ;
// set an raw-header:
$snoopy ->rawheaders[ "Pragma" ] = "no-cache" ;
// set some internal variables:
$snoopy ->maxredirs = 2;
$snoopy ->offsiteok = false;
$snoopy ->expandlinks = false;
// set username and password (optional)
//$snoopy->user = "joe";
//$snoopy->pass = "bloe";
// fetch the text of the website www.google.com:
if ( $snoopy ->fetchtext( "http://www.google.com" )){
// other methods: fetch, fetchform, fetchlinks, submittext and submitlinks
// response code:
print "response code: " . $snoopy ->response_code. "<br/>\n" ;
// print the headers:
print "<b>Headers:</b><br/>" ;
while (list( $key , $val ) = each( $snoopy ->headers)){
print $key . ": " . $val . "<br/>\n" ;
}
print "<br/>\n" ;
// print the texts of the website:
print "<pre>" .htmlspecialchars( $snoopy ->results). "</pre>\n" ;
}
else {
print "Snoopy: error while fetching document: " . $snoopy ->error. "\n" ;
}
|
希望本文所述对大家的php程序设计有所帮助。