日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側工具欄

新聞中心

這里有您想知道的互聯(lián)網營銷解決方案
如何使用Photon高效率提取網站數據

 Photon是一種高效率的的網絡爬蟲,可從目標中提取URL,文件以及各類情報。其通過多線程大大加快數據提取進程。

創(chuàng)新互聯(lián)公司為您提適合企業(yè)的網站設計?讓您的網站在搜索引擎具有高度排名,讓您的網站具備超強的網絡競爭力!結合企業(yè)自身,進行網站設計及把握,最后結合企業(yè)文化和具體宗旨等,才能創(chuàng)作出一份性化解決方案。從網站策劃到做網站、成都網站制作, 我們的網頁設計師為您提供的解決方案。

項目地址:

https://github.com/s0md3v/Photon

主要特點

Photon提供的各種選項可以讓用戶按照自己的方式抓取網頁,不過,Photon最棒的功能并不是這個。

數據提取

默認情況下,Photon在抓取時會提取以下數據:

網址(范圍內和范圍外的)

帶參數的網址(example.com/gallery.php?id=2)

情報(電子郵件,社交媒體帳戶,亞馬遜水桶等)

文件(pdf,png,xml等)

JavaScript等文件

基于自定義正則表達式模式的字符串

提取的信息按下圖方式保存。

智能多線程

大多數浮于互聯(lián)網表面的工具都沒有正確使用多線程,它們要么為線程提供一個項目列表,這會導致多個線程訪問同一個項目,或者只是放置一個線程鎖定并最終使多線程無效。

Ninja模式

在Ninja模式中,3個在線服務器用于代表你向目標發(fā)出請求。

所以基本上,現(xiàn)在你有4個客戶端同時向同一個服務器發(fā)出請求,如果連接速度慢,那么可以提高速度,***限度地降低連接重置的風險以及來自單個客戶端的延遲請求。

這是Quark生成的比較圖,其中的線代表線程:

兼容性&依賴

兼容性

Photon目前全面兼容python2.x – 3.x,但因為這個項目正處于積極開發(fā)階段,可能會需要python2.x不具備的功能。故開發(fā)者最終可能會放棄對python2.x的支持。

操作系統(tǒng)

Photon已經在Linux(Arch,Debian,Ubuntu),Termux,Windows(7&10)和Mac上進行了測試,并在所有系統(tǒng)上如期運行,如果你發(fā)現(xiàn)了任何bug,請在github上提交。

顏色

Mac和Windows不支持ANSI轉義序列,因此所輸出內容不會在Mac和Windows上顯示顏色。

依賴

requests
urllib3
argparse

Photon所使用的其余python庫是預裝的python解釋器的標準庫。

如何使用Photon

語法: photon.py [選項]
  -u --url              目標url
  -l --level            抓取等級
  -t --threads          線程數
  -d --delay            請求間的延遲
  -c --cookie           cookie
  -r --regex            正則表達式模式
  -s --seeds            其他的子url
  -e --export           導出格式化結果
  -o --output           指定輸出目錄
  --exclude             通過正則表達式排除特定url
  --timeout             http 請求超時
  --ninja               ninja 模式
  --update              更新
  --dns                 轉儲dns數據
  --only-urls           僅提取url
  --user-agent          指定 user-agent(s)

僅抓取單個網站

選項 -u 或 –url,使用示例:

 
 
 
 
  1. python photon.py -u "http://example.com" 

抓取深度

選項 -l 或 –level,默認深度為2,使用示例:

 
 
 
 
  1. python photon.py -u "http://example.com" -l 3 

通過該選項,用戶可以設置抓取的遞歸限制,例如,深度為2意思是Photon會從主頁和子頁。

線程數

選項 -t 或 –threads,默認線程數為2,使用示例:

 
 
 
 
  1. python photon.py -u "http://example.com" -t 10 

該選項可以對目標進行并發(fā)請求,-t選項可用于指定要進行的并發(fā)請求數量。值得注意的是,雖然多線程可以加速抓取,但是也可能會觸發(fā)安全機制,此外,線程數過多,也有可能使小型網站宕機。

每個HTTP請求間的延遲

選項 -d 或 –delay,默認為0,使用示例:

 
 
 
 
  1. python photon.py -u "http://example.com" -d 2 

該選項可以指定每個HTTP(S)請求之間間隔的秒數。有效值是int,例如1表示1秒。

超時

選項 –timeout,默認為5,使用示例:

 
 
 
 
  1. python photon.py -u "http://example.com --timeout=4 

該選項指定HTTP(S)請求等待多長時間即為超時。

Cookies

選項 -c 或 –cookies,默認為 no cookie header is sent,使用示例:

 
 
 
 
  1. python photon.py -u "http://example.com" -c "PHPSESSID=u5423d78fqbaju9a0qke25ca87" 

該選項允許你在非ninja模式下為發(fā)出的每個HTTP請求添加Cookie header,主要用于目標網站需要基于Cookie驗證的情形。

指定輸出目錄

選項 -o 或 –output,默認為 目標域名,使用示例:

 
 
 
 
  1. python photon.py -u "http://example.com" -o "我的目錄" 

Photon將結果保存在以目標域名命名的目錄中,但你可以使用此選項自定義目錄。

排除特定url

選項 –exclude,使用示例:

 
 
 
 
  1. python photon.py -u "http://example.com" --exclude="/blog/20[17|18]" 

匹配指定正則表達式的網址將不會被抓取及顯示在結果中。

指定子url

選項 -s 或 –seeds,使用示例:

 
 
 
 
  1. python photon.py -u "http://example.com" --seeds "http://example.com/blog/2018,http://example.com/portals.html" 

你可以使用此選項添加自定義子URL,要以逗號分隔。

指定user-agent(s)

選項 –user-agent,使用示例:

 
 
 
 
  1. python photon.py -u "http://example.com" --user-agent "curl/7.35.0,Wget/1.15 (linux-gnu)" 

你可以使用此選項使用自己的用戶代理,以逗號分隔。此選項僅用于幫助用戶在不修改默認user-agents.txt文件的情況下使用特定用戶代理。

自定義正則表達式模式

選項 -r 或 –regex,使用示例:

 
 
 
 
  1. python photon.py -u "http://example.com" --regex "\d{10}" 

通過使用此選項指定正則表達式模式,可以在抓取期間提取字符串。

導出格式化結果

選項 -e 或 –export

通過 -e 選項,你可以指定要保存文件的輸出格式,使用示例:

 
 
 
 
  1. python photon.py -u "http://example.com" --export=json 

目前支持的格式:json

跳過數據提取

選項: –only-urls,使用示例:

 
 
 
 
  1. python photon.py -u "http://example.com" --only-urls 

該選項會跳過提取js文件等數據,當你只需要抓取目標時,該選項可以派上用場。

更新

選項 –update,使用示例:

 
 
 
 
  1. python photon.py --update 

如果使用此選項,Photon會檢查更新。如果有新的版本,Photon會下載并將更新文件合并到當前目錄中,Photon不會覆蓋其他文件。

Ninja模式

選項 –ninja

此選項啟用Ninja模式。在該模式下,Photon會使用以下網站代表你發(fā)出請求。

 
 
 
 
  1. codebeautify.org 
  2. photopea.com 
  3. pixlr.com 

轉儲DNS數據

選項 –dns,使用示例:

 
 
 
 
  1. python photon.py -u http://example.com --dns 

創(chuàng)建顯示目標域名的DNS數據的圖像。目前不支持目標是子域。


分享文章:如何使用Photon高效率提取網站數據
鏈接分享:http://m.5511xx.com/article/djpihjd.html