日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
實(shí)例解析用Perl抓取網(wǎng)頁和提交表格

本文和大家重點(diǎn)討論一下用Perl抓取網(wǎng)頁和提交表格的方法,在學(xué)習(xí)Perl的過程中這些問題是經(jīng)常會遇到的,這里簡單介紹一下用Perl來實(shí)現(xiàn)抓好取網(wǎng)頁的源代碼,以及用POST的方法來提交表格,并返回結(jié)果。

高碑店ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場景,ssl證書未來市場廣闊!成為創(chuàng)新互聯(lián)的ssl證書銷售渠道,可以享受市場價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:028-86922220(備注:SSL證書合作)期待與您的合作!

用Perl抓取網(wǎng)頁和提交表格

這里簡單介紹一下用Perl來實(shí)現(xiàn)抓好取網(wǎng)頁的源代碼,以及用POST的方法來提交表格,并返回結(jié)果。難的講不來,講講簡單的。

這里講到的Perl模塊有:

useLWP::Simple;useLWP::UserAgent;用Perldoc查看詳細(xì)的用法。

1,用Perl抓取網(wǎng)頁

如果只是要拿到某個(gè)網(wǎng)頁,那使用LWP::Simple里的函數(shù)是最簡單的。通過調(diào)用get($url)函數(shù),就可以得到相關(guān)網(wǎng)址的內(nèi)容。

 
 
 
  1. my$url='http://freshair.npr.org/dayFA.cfm?todayDate=current' 
  2.  
  3. useLWP::Simple;  
  4. my$content=get$url;  
  5. die"Couldn'tget$url"unlessdefined$content;  
  6.  

 #$content里是網(wǎng)頁內(nèi)容,下面是對此內(nèi)容作些分析:

 
 
 
  1. if($content=~m/jazz/i){  
  2. print"They'retalkingaboutjazztodayonFreshAir!\n";  
  3. }else{  
  4. print"FreshAirisapparentlyjazzlesstoday.\n";  

非常簡單易懂。拿網(wǎng)頁內(nèi)容是容易的,難的是用正則過濾需要的內(nèi)容。

2,通過POST提交表格

部分HTML表格使用HTMLPOST向服務(wù)器提交數(shù)據(jù),在這里你可以這樣:

 
 
 
  1. $response=$browser->post($url,  
  2. [  
  3. formkey1=>value1,  
  4. formkey2=>value2,  
  5. ...  
  6. ],  
  7. ); 

實(shí)例分析:例如在http://www.enzim.hu/hmmtop/html/submit.html)提交一段序列并返回結(jié)果,用Perl來實(shí)現(xiàn)。代碼如下:

 
 
 
  1. #!/usr/bin/Perl  
  2.  
  3. useLWP::UserAgent;  
  4. my$browser=LWP::UserAgent->new;  
  5. $protein="MSSSTPFDPYALSEHDEERPQNVQSKSRTAELQAEIDDTVGIMRDNINKVAERGERLTSI";  
  6. my$SUSUI_URL="http://www.enzim.hu/hmmtop/server/hmmtop.cgi";  
  7. my$response=$browser->post($SUSUI_URL,['if'=>$protein,]);  
  8.  
  9. if($response->is_success){  
  10.  print$response->content;  
  11. }else{  
  12.  print"Badluckthistime\n";  
  13. }  

通過分析http://www.enzim.hu/hmmtop/html/submit.html的頁面可知,這個(gè)要提交的input只有一個(gè),就是name="if"。$protein就是要提交的序列。$response->content就是返回結(jié)果。

【編輯推薦】

  1. Perl if語句用法實(shí)例解析
  2. Perl文件句柄概念詳解
  3. 實(shí)例解析Perl守護(hù)進(jìn)程用法
  4. Perl基礎(chǔ) Perl數(shù)組學(xué)習(xí)指南
  5. 術(shù)語匯編 Perl變量中Perl關(guān)聯(lián)數(shù)組用法解析

標(biāo)題名稱:實(shí)例解析用Perl抓取網(wǎng)頁和提交表格
轉(zhuǎn)載來于:http://www.dlmjj.cn/article/dppsssp.html