wget script de tag de análise

1

Estou tentando fazer backup de um site que contém páginas com uma tag como esta:

<a id="12379-video"></a>
</div>

<script>
    jwplayer("12379-video").setup({
          file: "http://xyz.cloudfront.net/abc/moviename.mp4",
          flashplayer: "/sites/all/jwplayer/player.swf",
              stretching: "exactfit",
          height: 480,
          width: 640    });
</script></span>
  </div>
  1. O wget extrai o URL e o segue? (e quais são os parâmetros certos para dar ao comando)

  2. Qual é exatamente o mecanismo que wget usa para analisar o arquivo que está sendo recuperado para extrair as URLs?

  3. Existe alguma maneira de dizer ao analisador para considerar essa tag também? (usando expressões regulares ou similares)

  4. Caso não seja possível, que outras estratégias você sugere? (scripting com grep ou outros usando o bash)

por AndrewBloom 18.10.2015 / 12:54

1 resposta

0

Existe o parâmetro -p / --page-requisites (com -r juntos) que baixaria as URLs mais externas necessárias para exibir adequadamente uma determinada página HTML (a menos que elas sejam excluídas no arquivo robots).

Mais sobre isso pode ser lido no manual ( man wget ):

It's worth knowing that Wget's idea of an external document link is any URL specified in an <A> tag, an <AREA> tag, or a <LINK> tag other than <LINK REL="stylesheet">.

Since Wget does not ordinarily distinguish between external and inlined documents, one is generally left with "leaf documents" that are missing their requisites.

Por favor, note que o Wget tem uma tabela interna de tags HTML / pares de atributos que considera ao procurar por documentos vinculados durante uma recuperação recursiva. Para adicionar um, tente usar --follow-tags=list (lista separada por vírgula), o oposto de --ignore-tags=list .

Esta lista de tags provavelmente está definida em html-url.c e vai como segue:

/* For tags handled by tag_find_urls: attributes that contain URLs to
   download. */
static struct {
  int tagid;
  const char *attr_name;
  int flags;
} tag_url_attributes[] = {
  { TAG_A,              "href",         ATTR_HTML },
  { TAG_APPLET,         "code",         ATTR_INLINE },
  { TAG_AREA,           "href",         ATTR_HTML },
  { TAG_BGSOUND,        "src",          ATTR_INLINE },
  { TAG_BODY,           "background",   ATTR_INLINE },
  { TAG_EMBED,          "href",         ATTR_HTML },
  { TAG_EMBED,          "src",          ATTR_INLINE | ATTR_HTML },
  { TAG_FIG,            "src",          ATTR_INLINE },
  { TAG_FRAME,          "src",          ATTR_INLINE | ATTR_HTML },
  { TAG_IFRAME,         "src",          ATTR_INLINE | ATTR_HTML },
  { TAG_IMG,            "href",         ATTR_INLINE },
  { TAG_IMG,            "lowsrc",       ATTR_INLINE },
  { TAG_IMG,            "src",          ATTR_INLINE },
  { TAG_INPUT,          "src",          ATTR_INLINE },
  { TAG_LAYER,          "src",          ATTR_INLINE | ATTR_HTML },
  { TAG_OBJECT,         "data",         ATTR_INLINE },
  { TAG_OVERLAY,        "src",          ATTR_INLINE | ATTR_HTML },
  { TAG_SCRIPT,         "src",          ATTR_INLINE },
  { TAG_TABLE,          "background",   ATTR_INLINE },
  { TAG_TD,             "background",   ATTR_INLINE },
  { TAG_TH,             "background",   ATTR_INLINE }
};
    
por 18.10.2015 / 13:15

Tags