簡體   English   中英

重擊_ wget _html2txt

[英]Bash _ wget _html2txt

我被要求使用wget下載文件中保存的多個URL,並將它們存儲在另一個文件夾中。 所以我用了這個命令:

wget -E -i url.txt -P ~/Desktop/ProjectM2/data/crawl

但是問題編號為1的文件必須命名如下:

1.html
2.html
3.html
..

我嘗試了很多事情,但仍然做不到。

問題編號2我不知道如何在一個命令中使用html2txt -utf8將所有這些文件從.html更改為.txt並同時保留數字

1.txt
2.txt
3.txt
..

謝謝

如果您認為url.txt的url url.txt很重要,即1.html應該包含第一個url的數據,那么2.html應當對應於第二個url,依此類推,您可以處理一個url。一個。

以下腳本對每個網址執行所需的操作:

#!/bin/bash

infile="$1"

dest_dir="~/Desktop/ProjectM2/data/crawl"

# create html and txt dir inside dest_dir
mkdir -p "$dest_dir"/{html,txt}

c=1
while IFS='' read -r url || [[ -n "$url" ]]; do

    echo "Fetch $url into $c.html"
    wget -q -O "$dest_dir"/html/$c.html "$url"

    echo "Convert $c.html to $c.txt"
    html2text -o "$dest_dir"/txt/$c.txt "$dest_dir"/html/$c.html

    c=$(( c + 1 ))

done < "$infile"

該腳本說明了一個輸入文件,在本例中為url.txt 它在目標目錄~/Desktop/ProjectM2/data/crawl下創建兩個目錄( htmltxt ),以便更好地組織生成的文件。 我們借助while循環從文件url.txt逐行讀取url( 逐行讀取文件 )。 使用wget您可以使用-O選項指定所需的輸出文件名,從而可以根據需要命名文件(在您的情況下為序列號)。 -q選項用於從命令行刪除wget消息。 html2text您可以使用-o指定輸出文件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM