Forrest logo
back to the xidel tool

xidel:tldr:12509

xidel: Print all URLs found by a Google search.
$ xidel ${https:--www-google-com-search?q=test} --extract "//a/extract(@href, 'url[?]q=([^&]+)&', 1)[. != '']"
try on your machine

The given command is using the tool called "xidel" to extract relevant information from a webpage. Here's a breakdown of the command:

  • xidel: It is the name of the command-line tool that is being executed.
  • ${https:--www-google-com-search?q=test}: This is the URL of the webpage you want to fetch and analyze. In this case, it is pointing to a Google Search page with the query parameter "test".
  • --extract: It is an argument for xidel that specifies which information to extract from the webpage.
  • "//a/extract(@href, 'url[?]q=([^&]+)&', 1)[. != '']": This is an XPath expression that instructs xidel on how to extract information. The XPath expression has several components:
    • //a: Selects all <a> tags (links) in the webpage.
    • extract(@href, 'url[?]q=([^&]+)&', 1): Extracts a portion of the href attribute of each link using a regular expression.
    • The regular expression 'url[?]q=([^&]+)&' captures the value of the query parameter q in the URL.
    • The 1 is the capture group index (specified as 1) which fetches the captured value.
    • [. != '']: Filters out empty values. So, only non-empty values, i.e., extracted query parameter values, will be considered.

In summary, the command fetches a webpage, performs an XPath extraction on the links (<a> tags) present in it, and captures the query parameter value for links that include a non-empty "q" parameter.

This explanation was created by an AI. In most cases those are correct. But please always be careful and never run a command you are not sure if it is safe.
back to the xidel tool