.txtファイルのHTMLソースでsedを使用してURLをgrepします。

.txtファイルのHTMLソースでsedを使用してURLをgrepします。

以下のコードを使用する前に、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&amp;channel=WEB&amp;fdh=no&amp;id_file=69703978&amp;instance=softonic_en&amp;type=PROGRAM&amp;Expires=1444364906&amp;Signature=SdKSfTDHY4dG6HVu2--lqt8lRbGK9S1opIDZiSNwvggAAAXB3hESz1G1Y00rU5iLGY5lai0YOJBXhE4y6gvL4uQvCV4U5jzLDU9TmFTxe4xNDrEmkSC95LyGdGSudQKfrWdD06gBlVrqE49AeeotENtdA3SpkmfQGGd1tnjS138_&amp;Key-Pair-Id=APKAJUA62FNWTI37JTGQ&amp;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&amp;channel=WEB&amp;fdh=no&amp;id_file=69703978&amp;instance=softonic_en&amp;type=PROGRAM&amp;Expires=1444364906&amp;Signature=SdKSfTDHY4dG6HVu2--lqt8lRbGK9S1opIDZiSNwvggAAAXB3hESz1G1Y00rU5iLGY5lai0YOJBXhE4y6gvL4uQvCV4U5jzLDU9TmFTxe4xNDrEmkSC95LyGdGSudQKfrWdD06gBlVrqE49AeeotENtdA3SpkmfQGGd1tnjS138_&amp;Key-Pair-Id=APKAJUA62FNWTI37JTGQ&amp;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

おすすめ記事