大黑客呢?肯定会自己写脚本,不要一条一条的去敲命令,这里简单的利用lynx这个命令的应用来提取特点的web页面中的一系列的url,
你看把,这是小编的编辑器,不错把,挺漂亮的颜色,小编挺幸苦搞这个编辑器,给小编加个油吧,文章最后我会贴出源代码!!
我来说说这个脚本的工作原理
在显示页面时候,lynx会以最佳的格式显示页面文本,它可以跟随页面上的所有超文本引用或链接。该脚本在提取链接的时候,只使用sed打印出页面文本中references字符串之后的所有内容。然后根据用户指定的选项来处理链接列表。
上面的只是我在linux里写的一些代码,等等我会把源代码放出来,不懂的可以问问我,提取网页的链接其实是很有用的。
我们运行一下我写的代码
你看从百度的网站找到这么多链接,是不是挺有成就感的!!!!
Bash getlinks.sh http://www.amazon.com | wc –l
还能统计有多少条链接,亚马孙的一共有134条链接。
Bash getlinks.sh -d htt://www.baidu.com
这个去掉了前面的http://,就可以看见这些链接指向了多少不同的域。
你看吧,效果很不错吧!!!
写在最后,我们是做教育的,希望大伙能学到东西是我们不变的初衷!!最后我先把代码贴出来:
#!/bin/bash
#Date 2019-09-22
if [ $# -eq 0 ];then
echo “Usage:$0 [-d|-i|-x] url” >&2
echo “-d=domains only,-i=internal refs only,-x=external only” >&2
exit 1
fi
if [ $# -gt 1 ];then
case “$1″ in
-d) lastcmd=”cut -d/ -f3 | sort |uniq”
shift
;;
-r) basedomain=”http://$(echo $2 | cut -d -f3)/”
lastcmd=”grep ”^$basedomain” | sed ”s|$basedomain||g” | sort|
uniq”
shift
;;
-a) basedomain=”http://$(echo $2 | cut -d/ -f3)/”
lastcmd=”grep -v ”^$basedomain” | sort | uniq”
shift
;;
*) echo “$0 unknown option specified: $1″ >&2
exit 1
esac
else
lastcmd=”sort | uniq”
fi
lynx -dump “$1” |
sed -n ‘/^References$/,$p’ |
grep -E ‘[[:digit:]]+.’ |
awk ‘{print $2}’ |
cut -d? -f1 |
eval $lastcmd
exit 0