以下のコードを使用する前に、HTMLソースからURLリストをgrepすることができましたが、何らかの理由でこの特定の例では機能しません。
グレブ:
grep -1 box-download shareit1.txt|sed 's/<a/\/n/'|sed 's/href/\/n/'|grep http|cut -d\" -f2>> shareit2.txt
URL:
<div class="box-download">
<a data-no-file="0" title="SHAREit free download" href="http://gsf-cf.softonic.com/c98/1a8/173dd01ec9001985d81eb5f2023b03280c/LenovoShareIt-win.exe?SD_used=0&channel=WEB&fdh=no&id_file=69703978&instance=softonic_en&type=PROGRAM&Expires=1444364906&Signature=SdKSfTDHY4dG6HVu2--lqt8lRbGK9S1opIDZiSNwvggAAAXB3hESz1G1Y00rU5iLGY5lai0YOJBXhE4y6gvL4uQvCV4U5jzLDU9TmFTxe4xNDrEmkSC95LyGdGSudQKfrWdD06gBlVrqE49AeeotENtdA3SpkmfQGGd1tnjS138_&Key-Pair-Id=APKAJUA62FNWTI37JTGQ&filename=LenovoShareIt-win.exe" id="download-button" class="button-main-download-xl"
data-ua="#c,#l,a=Download,downloadType=HostedDownload"
>
<strong>Free Download
<span>Safe download</span>
</strong>
<i class="icon-download-alt"></i>
</a>
ご協力ありがとうございます。
ベストアンサー1
この(固定された)file.htmlを使用すると、次のようになります。
<html>
<div class="box-download">
<a data-no-file="0" title="SHAREit free download" href="http://gsf-cf.softonic.com/c98/1a8/173dd01ec9001985d81eb5f2023b03280c/LenovoShareIt-win.exe?SD_used=0&channel=WEB&fdh=no&id_file=69703978&instance=softonic_en&type=PROGRAM&Expires=1444364906&Signature=SdKSfTDHY4dG6HVu2--lqt8lRbGK9S1opIDZiSNwvggAAAXB3hESz1G1Y00rU5iLGY5lai0YOJBXhE4y6gvL4uQvCV4U5jzLDU9TmFTxe4xNDrEmkSC95LyGdGSudQKfrWdD06gBlVrqE49AeeotENtdA3SpkmfQGGd1tnjS138_&Key-Pair-Id=APKAJUA62FNWTI37JTGQ&filename=LenovoShareIt-win.exe" id="download-button" class="button-main-download-xl" data-ua="#c,#l,a=Download,downloadType=HostedDownload">
<strong>Free Download<span>Safe download</span></strong>
<i class="icon-download-alt"></i>
</a>
</div>
</html>
注文する:
xmlstarlet sel -t -v "//html/div/a/@href" file.html
出力:
http://gsf-cf.softonic.com/c98/1a8/173dd01ec9001985d81eb5f2023b03280c/LenovoShareIt-win.exe?SD_used=0&channel=WEB&fdh=no&id_file=6970397 364906 &S ignnatural=SdKSfTDHY4dG6HVu2--lqt8lRbGK9S1opIDZiSNwvggAAAXB3hESz1G1Y00rU5iLGY5la i0YOJBXhE4y6gvL4uQvCV4 KfrWdD06gBlVrqE 49A eeotENtdA3SpkmfQGGd1tnjS138_&キーペア -Id=APKAJUA62FNWTI37JTGQ&ファイル名=LenovoShareIt-win.exe