首頁>Program>source

我想从html檔案的定位標記中提取URL。 這需要使用SED / AwK在BASH中完成.請不要perl。

最簡單的方法是什麼?

最新回復
  • 5月前
    1 #

    您還可以執行類似的操作(前提是您已经安裝了Lynx)...

    Lynx版本<2.8.8

    lynx -dump -listonly my.html
    

    Lynx版本>= 2.8.8(由@condit提供)

    lynx -dump -hiddenlinks=listonly my.html
    

  • 5月前
    2 #

    您要求它:

    $ wget -O - http://stackoverflow.com | \
      grep -o '<a href=['"'"'"][^"'"'"']*['"'"'"]' | \
      sed -e 's/^<a href=["'"'"']//' -e 's/["'"'"']$//'
    

    這是一个粗糙的工具,因此所有有關尝試使用正則表達式解析HTML的常規警告都適用。

  • 5月前
    3 #

    grep "<a href=" sourcepage.html
      |sed "s/<a href/\\n<a href/g" 
      |sed 's/\"/\"><\/a>\n/2'
      |grep href
      |sort |uniq
    

    第一个grep查詢包含url的行.您可以添加更多元素 之後,如果您只想在本地頁面上查看,那麼就不用http了,但是 相對路徑。

    第一个sed將在每个a hrefURL標記前添加\ n

    換行符

    第二个sed会通過用換行符替換/ a標記来縮短第二行之後的每个網址 两種sed都会在一行中為您提供每个網址,但是有垃圾,所以

    第二个grep href清理混亂

    sort和uniq將為您提供sourcepage.html中存在的每个現有url的一个例項。

  • 5月前
    4 #

    使用Xidel-HTML / XML資料提取工具,可以通過以下方式完成:

    $ xidel --extract "//a/@href" http://example.com/
    

    轉換為绝對URL:

    $ xidel --extract "//a/resolve-uri(@href, base-uri())" http://example.com/
    

  • 5月前
    5 #

    一个示例,因為您没有提供任何示例

    awk 'BEGIN{
    RS="</a>"
    IGNORECASE=1
    }
    {
      for(o=1;o<=NF;o++){
        if ( $o ~ /href/){
          gsub(/.*href=\042/,"",$o)
          gsub(/\042.*/,"",$o)
          print $(o)
        }
      }
    }' index.html
    

  • math:同一平面內具有相同原點的两个3D向量之間的符號角
  • android studio:buildTypes不能應用於groovylangClosure