PHP Snoopy網頁抓取工具

2021-08-25 23:57:15 字數 2045 閱讀 9348

snoopy是乙個php類,用來模仿web瀏覽器的功能,它能完成獲取網頁內容和傳送表單的任務。

下面是它的一些特徵:

1、方便抓取網頁的內容11111111111

2、方便抓取網頁的文字(去掉html**)

3、方便抓取網頁的鏈結

4、支援**主機

5、支援基本的使用者/密碼認證模式

6、支援自定義使用者agent,referer,cookies和header內容

7、支援瀏覽器轉向,並能控制轉向深度

8、能把網頁中的鏈結擴充套件成高質量的url(預設)

9、方便提交資料並且獲取返回值

10、支援跟蹤html框架(v0.92增加)

11、支援再轉向的時候傳遞cookies

下面是簡單的例子,比如說我們抓取我的blog的文字

include

"snoopy.class.php";

$snoopy

= new

snoopy

;$snoopy

->

fetchtext("

");echo

$snoopy

->

results;

^_^,不錯把,在比如抓取鏈結

include

"snoopy.class.php";

$snoopy

= new

snoopy

;$snoopy

->

fetchlinks("

");print_r

($snoopy

->

results);

使用snoopy提交資料實現登陸

模擬登陸可以用curl或者socket來實現,當curl需要伺服器相應的啟用curl module,自己socket實現相對比較麻煩,使用snoopy就簡單了很多啦。

在這裡,我們使用喜悅國際村做為例子。(^_^,純屬研究)

首先,我們要獲取到登陸需要傳送什麼字段,目標位址是什麼。這裡我們使用snoopy的fetchform來實現。

include

"snoopy.class.php";

$snoopy

= new

snoopy

;$snoopy

->

fetchform("

");print

$snoopy

->

results;

**如下:

include

"snoopy.class.php";

$snoopy

= new

snoopy

;$submit_url= "

";$submit_vars["

loginmode"]

= "normal";

$submit_vars["

styleid"]

= "1"

;$submit_vars["

cookietime"]

= "315360000";

$submit_vars["

loginfield"]

= "username";

$submit_vars["

username"]

= "********"; 

//你的使用者名稱

$submit_vars["

password"]

= "*******"; 

//你的密碼

$submit_vars["

questionid"]

= "0"

;$submit_vars["

answer"]

= ""

;$submit_vars["

loginsubmit"]

= "提   交";

$snoopy

->

submit

($submit_url

,$submit_vars);

print

$snoopy

->

results;

網頁抓取小工具

整體思路 1 抓取出目錄中各章節的名稱及url 2 遍歷章節url,獲取具體內容 3 將章節url進行分包,交給多執行緒處理 4 將處理完的內容重新整理,按章節名稱排序 5 將內容寫入txt檔案 首先抓取導航頁面的內容,通過webrequest物件獲取網頁內容 通過鏈結位址獲取html內容 priv...

Python 抓取網頁的庫和工具

twisted 抓網頁,它有優秀的非同步事件驅動的架構,常見的協定都已經有實做,包括http smtp等等 getpage addcallback printpage 一行就可以抓網頁 lxml 效率高,支援xpath def getnextpagelink self,tree get next p...

網頁抓取小工具(IE法)

用ie提取網頁資料的好處在於 所見即所得,網頁上能看到的資訊一般都能獲取。本工具功能不多,主要是便於提取網頁上展示的資訊所在元素的 希望能對大家有點小幫助。網頁抓取小工具.rar 6 在新生成的excel裡,點選 執行 按鈕,看是否能生成所需資料。如果生成的資料和開始分析的資料不符,原因可能是 1 ...