如何使用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/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- html如何根據檔案路徑顯示檔案內容(pdf)HTML
- 提取動態html網頁內容HTML網頁
- java檔案相關(檔案追加內容、檔案內容清空、檔案內容讀取)Java
- 使用ln同步檔案內容,支援忽略檔案
- 用python3教你任意Html主內容提取PythonHTML
- 如何使用python指令碼定時清空檔案內容?Python指令碼
- 使用GeoTools解析shp檔案內容
- 如何編輯PDF檔案的內容?
- vite vue-cli 讀取檔案原始內容 使用base64內容的檔案ViteVue
- 如何用Python批量提取PDF文字內容?Python
- 檔案內容比較
- vim內替換檔案內容
- 在Linux中,如何使用grep命令查詢檔案中的內容?Linux
- Python提取文字指定內容Python
- 探索vim之如何快速刪除檔案內容
- LIUNUX如何擷取txt檔案中的內容,並建立新檔案UX
- 檔案內容對比工具
- git檢視檔案內容Git
- [BUG反饋]Application\Admin\View\Article\sidemenu.html檔案內容取值bugAPPViewIDEHTML
- Linux常用命令!如何檢視檔案內容?Linux
- 如何編寫html檔案HTML
- 搜尋本地pdf檔案內容
- ftp上直接修改檔案內容FTP
- linux-批次修改檔案內容Linux
- 實用解析dmp檔案內容
- node中給檔案追加內容
- 命令列技巧:分割檔案內容命令列
- python操作檔案寫入內容Python
- python中修改檔案行內容Python
- php獲取xml檔案內容PHPXML
- mybatis讀取properties檔案內容MyBatis
- Linux如何檢視檔案包含內容?常用指令有哪些?Linux
- 如何在 Linux 上識別同樣內容的檔案Linux
- Linux如何檢視檔案內容?Linux常用命令Linux
- Linux常用命令之如何檢視檔案內容?Linux
- whatsns模板檔案中如何呼叫指定類目下的內容
- 文章內容提取庫 goose 簡介Go
- python 檔案操作(二) 替換性修改檔案內容Python