如何在Linux中使用lynx / w3m提取多个URL的文本

时间:2014-06-28 11:37:13

标签: linux bash sed pipe lynx

我在一个文本文件中列出了50个奇怪的URL(每行一个URL)。现在,对于每个URL,我想提取网站的文本并将其保存下来。这听起来像是Linux中的shell脚本的工作。

目前我正在把事情放在一起:

  1. sed -n 1p listofurls.txt我可以阅读我的网址文件中的第一行listofurls.txt
  2. with lynx -dump www.firsturl...我可以使用输出通过各种命令进行管道整理和清理。完成,这有效。
  3. 在自动化之前,我正在努力将URL引入lynx:比如说

    sed -n 1p listofurls.txt | lynx -dump -stdin
    

    不起作用。

    对于一个网址,我怎么能这样说,更重要的是我对listofurls.txt中的每个网址?

2 个答案:

答案 0 :(得分:0)

你可以写这样的剧本

vi script.sh

#content of script.sh#
while read line
do
    name=$line
    wget $name
    echo "Downloaded content from - $name"
done < $1
#end#

chmod 777 script.sh

./script.sh listofurls.txt

答案 1 :(得分:0)

要将一个网址传输到lynx,您可以使用xargs

sed -n 1p listofurls.txt | xargs lynx -dump

要从文件中下载所有网址(通过lynx解析并打印出来),您可以执行以下操作:

while read url; do lynx - -dump $url; done < listofurls.txt