透過LinkExtractor類提取連結
使用LinkExtractor類可以方便地從網頁中提取連結。以下是使用LinkExtractor類提取連結的基本步驟:
匯入LinkExtractor類:
在Python指令碼中匯入LinkExtractor類:
from scrapy.linkextractors import LinkExtractor
建立LinkExtractor物件:
使用LinkExtractor類建立連結提取器物件,指定要提取的連結規則:
link_extractor=LinkExtractor(allow=r'/page/',restrict_xpaths=['//div[ class="content"]'])
allow=r'/page/':這裡使用allow引數指定要提取的連結的規則,這個例子中是提取所有URL中包含/page/的連結。
restrict_xpaths=['//div[ class="content"]']:使用restrict_xpaths引數指定要在哪些XPath表示式匹配的區域中提取連結。
提取連結:
在Spider的parse方法中使用建立的LinkExtractor物件提取連結:
def parse(self,response):
links=link_extractor.extract_links(response)
for link in links:
#處理提取的連結
print(link.url)
使用extract_links方法從響應中提取連結,返回一個包含提取的連結的列表。
遍歷提取的連結列表,可以對每個連結進行進一步處理。
透過以上步驟,您可以使用LinkExtractor類方便地從網頁中提取連結。這樣可以輕鬆地獲取頁面中符合特定規則的連結,並進一步處理這些連結或者跟蹤這些連結進行爬取。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70032566/viewspace-2998130/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- js 透過連結下載檔案JS
- 003 透過連結串列學Rust之給連結串列新增函式Rust函式
- 012 透過連結串列學習Rust之持久化單連結串列Rust持久化
- 019 透過連結串列學Rust之雙連結串列實現PeekRust
- 004 透過連結串列學Rust之測試Rust
- 006 透過連結串列學Rust之使用OptionRust
- 009 透過連結串列學習Rust之IntoIterRust
- 010 透過連結串列學習Rust之IterRust
- 011 透過連結串列學習Rust之IterMutRust
- 014 透過連結串列學習Rust之持久化連結串列的DropRust持久化
- 016 透過連結串列學習Rust之安全的雙連結串列佈局Rust
- 023 透過連結串列學Rust之非安全方式實現連結串列1Rust
- 024 透過連結串列學Rust之非安全方式實現連結串列2Rust
- 005 透過連結串列學Rust之實現DropRust
- 007 透過連結串列學Rust之支援泛型Rust泛型
- 015 透過連結串列學習Rust之使用ArcRust
- 提取超連結正規表示式
- 013 透過連結串列學習Rust之實現連結串列的通用函式Rust函式
- 如何透過javax.persistence.Tuple和JPQL提取DTO?Java
- 001 透過連結串列學習Rust筆記之前言Rust筆記
- 017 透過連結串列學Rust之實現元素新增Rust
- 018 透過連結串列學Rust之實現pop frontRust
- 021 透過連結串列學Rust之實現迭代器Rust
- 022 透過連結串列學Rust之為什麼要非安全的單連結串列Rust
- 從連結中提取github倉庫名Github
- 如何透過DBeaver 連線 TDengine?
- 透過CRM系統連結市場部與銷售部
- 008 透過連結串列學習Rust之實現Peek函式Rust函式
- adb透過wifi連線手機WiFi
- sqlserver沒有采用預設例項時透過ip進行連結SQLServer
- JPA透過表反向生成相關類
- Python提取Word文件中所有超連結地址和文字Python
- 使用JMeter的JSON提取器:透過遞迴下降查詢,從介面響應中提取特定欄位JMeterJSON遞迴
- jquery/js透過當前URL對當前欄目連結高亮顯示jQueryJS
- IOS H5頁面透過universal-link(通用連結)開啟APPiOSH5APP
- 020 透過連結串列學Rust之push_back和pop_back等Rust
- 025 透過連結串列學Rust之使用棧實現雙端佇列Rust佇列
- mac透過網線連線主機(fnOS)Mac