如何使用htmlq提取html檔案內容
htmlq能夠對 HTML 資料進行 sed 或 grep 操作。我們可以使用 htmlq 搜尋、切片和過濾 HTML 資料。讓我們看看如何在 或 Unix 上安裝和使用這個方便的工具並處理 HTML 資料。 |
什麼是htmlq?
htmlq
類似於
jq
,但用於 HTML。使用 CSS 選擇器從 HTML 檔案中提取部分內容。在 CSS 中,選擇器用於定位我們想要設定樣式的網頁上的 HTML 元素。例如,我們可以使用此工具輕鬆提取影像或其他 URL。
安裝htmlq
首先需要在系統中安裝cargo然後使用cargo來安裝htmlq:
[root@localhost ~]# yum -y install cargo [root@localhost ~]# cargo install htmlq
設定可執行的路徑
確保將
$HOME/.cargo/bin
新增到 PATH 變數中,以便能夠使用 export
執行已安裝的二進位制檔案:
[root@localhost ~]# echo 'export PATH="$PATH:$HOME/.cargo/bin"' >> ~/.bash_profile [root@localhost ~]# . ~/.bash_profile
如何使用 htmlq 從 HTML 檔案中提取內容?
下面是使用curl和htmlq的用法:
curl -s url | htmlq '#css-selector' curl -s url2 | htmlq '.css-selector' curl -s | htmlq --pretty '#content' | more
讓我們找到頁面中的所有連結。例如:
[root@localhost ~]# curl -s | htmlq --attribute href a
人性化顯示HTML:
[root@localhost ~]# curl --silent | htmlq --pretty '#posts'
幫助手冊
使用下面 檢視幫助頁面:
[root@localhost ~]# htmlq --help htmlq 0.3.0 Michael Maclean <michael@mgdm.net> Runs CSS selectors on HTML USAGE: htmlq [FLAGS] [OPTIONS] [selector]... FLAGS: -B, --detect-base Try to detect the base URL from the <base> tag in the document. If not found, default to the value of --base, if supplied -h, --help Prints help information -w, --ignore-whitespace When printing text nodes, ignore those that consist entirely of whitespace -p, --pretty Pretty-print the serialised output -t, --text Output only the contents of text nodes inside selected elements -V, --version Prints version information OPTIONS: -a, --attribute <attribute> Only return this attribute (if present) from selected elements -b, --base <base> Use this URL as the base for links -f, --filename <FILE> The input file. Defaults to stdin -o, --output <FILE> The output file. Defaults to stdout ARGS: <selector>... The CSS expression to select [default: html]
總結
htmlq能夠對 HTML 資料進行 sed 或 grep 操作。我們可以使用 htmlq 搜尋、切片和過濾 HTML 資料。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31524109/viewspace-2927228/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 提取rpm檔案內容
- 提取動態html網頁內容HTML網頁
- html如何根據檔案路徑顯示檔案內容(pdf)HTML
- java檔案相關(檔案追加內容、檔案內容清空、檔案內容讀取)Java
- 使用ln同步檔案內容,支援忽略檔案
- 使用GeoTools解析shp檔案內容
- 用python3教你任意Html主內容提取PythonHTML
- 如何使用python指令碼定時清空檔案內容?Python指令碼
- 如何編輯PDF檔案的內容?
- vite vue-cli 讀取檔案原始內容 使用base64內容的檔案ViteVue
- Python Xpath 提取html整個元素(標籤與內容)PythonHTML
- 【巴山】Asp.NET大檔案上傳元件開發總結(二)---提取檔案內容ASP.NET元件
- 如何用Python批量提取PDF文字內容?Python
- 檔案內容拷貝
- Oracle 控制檔案內容Oracle
- 檔案內容比較
- vim內替換檔案內容
- 使用 Node.js 來開發一個資訊爬蟲(二)-- HTML內容提取優化Node.js爬蟲HTML優化
- 探索vim之如何快速刪除檔案內容
- Python提取文字指定內容Python
- 在Linux中,如何使用grep命令查詢檔案中的內容?Linux
- LIUNUX如何擷取txt檔案中的內容,並建立新檔案UX
- 檔案內容對比工具
- C#分割檔案內容C#
- git檢視檔案內容Git
- properties檔案內容亂碼
- Linux檔案內容操作Linux
- 檢視控制檔案內容
- dump 轉儲檔案內容
- linux下使用find xargs grep查詢檔案及檔案內容Linux
- 如何看spfilesid.ora檔案裡面內容
- 如何用 grep 命令在 UNIX 中根據檔案內容查詢檔案
- Linux學習筆記——如何使用echo指令向檔案寫入內容Linux筆記
- 文章內容提取庫 goose 簡介Go
- Linux常用命令!如何檢視檔案內容?Linux
- whatsns模板檔案中如何呼叫指定類目下的內容
- 實用解析dmp檔案內容
- 命令列技巧:分割檔案內容命令列