Como definir o agente do usuário em CURL

Como definir o agente do usuário em CURL
Uma string de agente de usuário descreve várias informações para o servidor que você está tentando se conectar, por exemplo, tipo de navegador, versão do navegador, sistema operacional, etc. Sempre que você está navegando na web, seu navegador da web inclui automaticamente esses dados no cabeçalho HTTP. Dependendo do agente do usuário, o servidor pode responder de maneira diferente.

O ondulação O comando é uma ferramenta poderosa para os desenvolvedores transferirem dados de e para os servidores. É baseado no libcurl Biblioteca de Desenvolvimento, compatível com a maioria das outras bibliotecas. Podemos usar o ondulação comando para imitar diferentes agentes de usuários ao se comunicar com um servidor.

Agente de usuário curl

O comando CURL envia seu próprio agente de usuário na solicitação HTTP por padrão. O ondulação O agente do usuário segue a seguinte estrutura:

$ CURL/

Para obter o número da versão de ondulação, Use o seguinte comando:

$ curl -versão

Como relata a saída, é v7.68.0. Então, o agente do usuário padrão do CURL seria assim:

$ CURL/7.68.0

Definir agente de usuário personalizado em ondulação

Nós podemos dizer ondulação Para enviar uma string de agente de usuário diferente em vez disso. Para fazer isso, use a bandeira "-a" para descrever o novo agente de usuário. A estrutura de comando será algo assim:

$ curl -a ""

A bandeira "-a" é uma abreviação da opção "-User-Agent". Também podemos usar isso para melhor esclarecimento:

$ Curl-User-Agent ""

Outro método que podemos usar é a bandeira “-h.”Esta bandeira permite ajustar um único parâmetro de um cabeçalho extra para ser incorporado ao ondulação solicitar. A estrutura de comando seria assim:

$ CURL -H "User -Agent:"

Obtendo agente de usuário personalizado

Agora, é uma questão de obter um agente de usuário personalizado. Qualquer agente do usuário consiste em várias variáveis ​​(sistema operacional, versão do navegador, tipo de navegador, etc.), cada um com vários valores possíveis. Isso empurra facilmente o número de possíveis agentes de usuário para milhões.

Se você estiver interessado, confira este banco de dados WhatismyBrowser em vários agentes de usuários. O enorme banco de dados registra milhões de agentes de usuários exclusivos. Para fins de demonstração, usarei a seguinte sequência de agentes do usuário:

$ Mozilla/5.0 (x11; Linux x86_64) Applewebkit/537.36 (KHTML, como Gecko) Chrome/99.0.4844.74 Safari/537.36

Este agente de usuário descreve as seguintes informações:

  • Sistema operacional: Linux (x86_64)
  • Navegador: Chrome
  • Versão do navegador: 99.0.4844.74

Observe que não há padrão estabelecido para definir um agente de usuário. Isso leva a uma variedade muito ampla (e selvagem) de strings agentes do usuário.

Enviando agentes de usuários personalizados usando ondulação

Agora que temos a mão no agente de usuário desejado, demonstraremos como implementá -lo. No exemplo seguinte, enviaremos uma solicitação para o exemplo.com Usando nossa string de agente de usuário personalizada:

$ CURL-User-Agent "Mozilla/5.0 (x11; Linux x86_64) Applewebkit/537.36 (KHTML, como Gecko) Chrome/99.0.4844.74 Safari/537.36 "Exemplo.com

Usando o modo detalhado, podemos ver que o Curl adicional está enviando para o servidor remoto:

$ curl --verbose-user-agent "mozilla/5.0 (x11; Linux x86_64) Applewebkit/537.36 (KHTML, como Gecko) Chrome/99.0.4844.74 Safari/537.36 "Exemplo.com

Pensamentos finais

Este guia demonstra a definição de um agente de usuário personalizado no CURL. Dependendo do agente do usuário, o serviço de solicitação pode responder de maneira diferente. O ondulação O comando envia seu próprio agente de usuário por padrão. No entanto, permite especificar um agente de usuário diferente para suas solicitações da Web.

Esta é apenas uma única maneira de usar o comando curl. Confira este guia sobre Curl no Linux que demonstra muitas maneiras de usar o CURL (com exemplos). Como sempre, também é recomendável dar uma olhada na página do homem:

$ Man Curl

Computação feliz!