Scrapoxy: A melhor ferramenta para raspar a Web sem restrições

Raspagem, Guias, Como fazer, Jun-15-20245 minutos de leitura

A raspagem da Web tornou-se uma ferramenta essencial para programadores, cientistas de dados e profissionais de TI que procuram extrair dados valiosos de sítios Web. No entanto, o desafio de evitar proibições, gerir taxas de pedidos e manter o anonimato pode ser assustador. Entre no ProxyScrape e o Scrapoxy - duasferramentas poderosas que, quando integradas, tornam a raspagem da Web mais eficiente e eficaz.

Neste post, vamos explorar como combinar o ProxyScrape com o Scrapoxy, oferecendo-lhe uma solução perfeita para as suas necessidades de raspagem da Web. Vamos começar!

Fancy a video instead? - Watch this!

Introdução ao Scrapoxy e ProxyScrape

O que é Scrapoxy?

O Scrapoxy é uma ferramenta de gestão de proxies que simplifica o processo de integração de proxies nos seus projectos de recolha de dados da Web. Garante que as suas actividades de recolha de dados não são detectadas através da rotação de proxies e da gestão das taxas de pedido.

O que é ProxyScrape?

ProxyScrape é um serviço robusto que oferece uma vasta gama de soluções de proxy, incluindo listas de proxy gratuitas, proxies premium, proxies residenciais e uma API de raspagem da Web. Com funcionalidades como a segmentação geográfica, a renderização de JavaScript e a execução de acções, o ProxyScrape foi concebido para lidar até com as tarefas de raspagem mais complexas.

A importância dos proxies no Web Scraping

A utilização de proxies é crucial por várias razões:

  • Recolha de dados: Os proxies permitem-lhe recolher dados de sítios Web sem serem bloqueados.
  • Anonimato: Ajudam a manter o seu anonimato, mascarando o seu endereço IP.
  • Contornar restrições: Os proxies permitem-lhe contornar as restrições geográficas e aceder a conteúdos de diferentes regiões.

Integração de ProxyScrape com Scrapoxy

A integração do ProxyScrape com o Scrapoxy é um processo simples que pode melhorar significativamente a sua eficiência de raspagem da Web. Siga estes passos para começar:

Passo 1: Obter Proxies de ProxyScrape

  • Inscreva-se em ProxyScrape: Visite o sítio Web ProxyScrape e registe-se para obter uma conta.
  • Escolha o seu plano de proxy: Dependendo das suas necessidades, seleccione a lista de proxy gratuita ou um plano premium que ofereça proxies residenciais ou dedicados.
  • Descarregar a lista de proxies: Aceda ao seu painel de controlo e descarregue a lista de proxies em formato .txt.

Passo 2: Instalar o Scrapoxy

Para configurar o Scrapoxy, é preciso primeiro entender que ele funciona como um contêiner Docker. Isso permite a implantação e o gerenciamento fáceis do gerenciador de proxy. Siga estas etapas para colocar o Scrapoxy em execução na sua máquina local:

  • Se ainda não estiver instalado, primeiro instale o Docker.
  • Abrir o **terminal** e executar o seguinte comando:
docker run -d -p 8888:8888 -p 8890:8890 -v ./scrapoxy:/cfg -e AUTH_LOCAL_USERNAME=admin-e AUTH_LOCAL_PASSWORD=password-e BACKEND_JWT_SECRET=secret1-e FRONTEND_JWT_SECRET=secret2-e STORAGE_FILE_FILENAME=/cfg/scrapoxy.json fabienvauchelles/scrapoxy
  • Substitua admin, password, secret1 e secret2 pelos seus próprios valores.
  • Pode agora aceder à interface de utilizador em http://localhost:8890, com o nome de utilizador 'admin' e a palavra-passe 'password'.

Passo 3: Configurar novo projeto

No Scrapoxy, um projeto refere-se a um conjunto específico de configurações e proxies que gere para uma determinada tarefa de raspagem da Web. Cada projeto permite-lhe definir os proxies a utilizar, definir credenciais e configurar taxas de pedido e políticas de rotação. Esta abordagem modular facilita o tratamento dos requisitos de diferentes sítios Web e melhora a eficiência global e a taxa de sucesso das suas actividades de recolha de dados da Web.

Primeiro, vamos criar um projeto para podermos avançar para os passos seguintes:

  • Na página inicial, clique no botão "Criar novo projeto".
  • Aqui ser-lhe-á apresentado um formulário que deverá preencher com as informações acima referidas:
  • Nome: Identificador único para o projeto;
  • Nome de utilizador: Nome de utilizador de autenticação utilizado para autenticação proxy nos pedidos 
  • Palavra-passe: Palavra-passe de autenticação utilizada para a autenticação proxy nos pedidos 
  • Renovar token: Clique neste botão para renovar o nome de utilizador e a palavra-passe;
  • Mínimo de proxies: O número mínimo de mandatários em linha quando o estado do projeto é CALM;
  • Auto Rotate Proxies (Rotação automática de proxies): Se ativado, os proxies são automaticamente rodados em intervalos aleatórios dentro do intervalo de atraso especificado;
  • Aumento automático de escala: Quando ativado, o estado do projeto muda para HOT ao receber um pedido e todos os proxies são iniciados;
  • Redução automática: Quando ativado, o estado do projeto muda para CALM se não forem recebidos pedidos após um atraso especificado e todos os proxies são interrompidos;
  • Intercetar pedidos HTTPS com MITM: Se ativado, o Scrapoxy intercepta e modifica os pedidos e respostas HTTPS.
  • Certificado: Instale este certificado CA para evitar avisos de segurança em browsers ou scrapers;
  • Manter o mesmo proxy com injeção de cookies: Se ativado, o Scrapoxy injecta um cookie para manter o mesmo proxy para uma sessão do browser (sticky cookie);
  • Substituir User-Agent: Se ativado, o Scrapoxy substitui o cabeçalho User-Agent pelo valor atribuído a uma instância proxy. Todos os pedidos feitos com esta instância terão o mesmo cabeçalho User-Agent;

Dentro do projeto, podemos ligar os nossos proxies utilizando uma funcionalidade chamada conetor no Scrapoxy. Na próxima etapa, vamos explorar o que isso envolve.

Passo 4: Configurar o conetor ProxyList

Como o nome sugere, um conetor actua como uma ponte entre o seu fornecedor de proxy e o Scrapoxy. Permite-lhe obter proxies do seu fornecedor e geri-los eficazmente. Uma vez que o Scrapoxy não pode suportar diretamente todos os fornecedores de proxy, pode introduzir uma lista de proxies de qualquer fornecedor e estes serão integrados no Scrapoxy. No Scrapoxy, este conetor é referido como ProxyList. Abaixo, encontrará um guia passo-a-passo sobre como integrar uma lista de proxies no conetor ProxyList.

Antes de criar o conetor, precisamos de estabelecer uma nova credencial. Como o nome indica, uma credencial permite-lhe autenticar proxies a partir de um conetor. Neste exemplo, estamos a utilizar um conetor ProxyList. Como já temos a nossa lista de proxies, não há necessidade de os autenticar no Scrapoxy. No entanto, lembre-se que cada vez que criamos um conetor, devemos ter uma instância de credencial para ele. No conetor ProxyList, uma credencial serve simplesmente como um espaço reservado.

Nas secções seguintes, iremos orientá-lo no processo de configuração de uma credencial, seguido da configuração do conetor ProxyList

  • Abra a interface de utilizador do Scrapoxy, vá para o projeto pretendido e seleccione Marketplace:
  • Criar uma nova credencial:
  • Seleccione Lista de Proxy para criar uma nova credencial (utilize a pesquisa, se necessário).
  • Preencha o formulário introduzindo um nome para esta credencial e clique em "Criar"
  • No painel esquerdo, clique em "Connectors" (Conectores), crie um novo conetor e seleccione Proxy List (Lista de Proxy ) como fornecedor:
  • Preencher o formulário com as seguintes informações:
    • Credencial: A credencial anterior;
    • Nome: O nome do conetor;
    • # Proxies: O número de instâncias a criar.
    • Tempo limite dos proxies: Duração máxima da ligação a um proxy antes de o considerar como offline;
    • Kick de proxies: Se ativado, duração máxima para um proxy estar offline antes de ser removido do grupo;
    • Tempo limite de proxies livres: Igual ao Proxies Timeout, mas para o pool de freeproxies;
    • Kick de proxies livres: O mesmo que o Proxies Kick, mas para o pool de freeproxies.

Adicionar uma fonte de proxies

  • No conetor, clique em Atualizar.
  • Cole a lista ProxyScrape de proxies na área de texto e clique no ícone de adição.

O Scrapoxy suporta os seguintes formatos:

  • ip:porta
  • ip:porta:nome de utilizador:palavra-passe
  • http://ip:port
  • http://username:password@ip:port
  • https://ip:port
  • https://username:password@ip:port
  • socks://ip:port (shortcut for socks5://ip:port)
  • socks://username:password@ip:port (shortcut for socks5://username:password@ip:port)
  • socks4://ip:porta
  • socks4://username:password@ip:port
  • socks5://ip:porta
  • socks5://username:password@ip:port

 Iniciar o conetor

  • Iniciar o projeto;
  • Ligar o conetor.

Passo 5: Integre o Scrapoxy no seu processo de recolha de dados da Web.

Neste exemplo, vamos mostrar como integrar o scrapoxy com a famosa biblioteca HTTP Requests do Python.

  • Instalar a biblioteca
    • pip install pedidos
  • Recuperar certificado CA e token de projeto
    • Abra a interface de utilizador do Scrapoxy e vá para as definições do projeto;
    • Clique em Descarregar certificado CA e guarde o ficheiro (lembre-se do código do projeto (o formato é USERNAME:PASSWORD));
  • Criar e executar o script
    • Crie um ficheiro com o nome requests.py com o seguinte conteúdo:
import requests
ca = "/tmp/scrapoxy-ca.crt"
proxy = "http://USERNAME:PASSWORD@localhost:8888"
r = requests.get(
   "https://fingerprint.scrapoxy.io",
   proxies={"http": proxy, "https": proxy},
   verify=ca
)
print("proxy instance:", r.headers["x-scrapoxy-proxyname"])
print(r.json())

Substitua USERNAME e PASSWORD pelas credenciais que copiou anteriormente.

O Scrapoxy inclui um cabeçalho x-scrapoxy-proxyname em cada resposta, indicando o nome da instância proxy atribuída ao pedido.

Para mais exemplos de implementações Scrapoxy, convidamo-lo a explorar esta ligação.

Melhores práticas para uma recolha eficaz de dados da Web

Para tirar o máximo partido do ProxyScrape e do Scrapoxy, considere as seguintes práticas recomendadas:

  • Rodar proxies: Rodar regularmente os proxies para evitar a deteção e as proibições.
  • Gerir as taxas de pedido: Mantenha as suas taxas de pedidos razoáveis para evitar sobrecarregar o sítio Web de destino.
  • Não ser detectado: Utilize cabeçalhos e cookies para imitar o comportamento humano e evitar chamar a atenção para as suas actividades de scraping.

Caso de utilização no mundo real 

Digamos que está a extrair dados de produtos de um sítio Web de comércio eletrónico. Ao integrar o ProxyScrape com o Scrapoxy, pode:

  • Obter URLs de produtos: Utilize os proxies de ProxyScrape para recolher URLs de produtos sem ser bloqueado.
  • Extrair detalhes do produto: Rodar proxies com o Scrapoxy para extrair detalhes do produto, como preço, disponibilidade e avaliações
  • Armazene os dados de forma eficiente: Guarde os dados extraídos numa base de dados para análise.

Conclusão

A integração do ProxyScrape com o Scrapoxy oferece uma solução perfeita para uma raspagem eficiente da Web. Ao utilizar proxies para manter o anonimato, contornar restrições e gerir taxas de pedidos, pode melhorar significativamente as suas capacidades de extração de dados.

Pronto para levar o seu web scraping para o próximo nível? Registe-se em ProxyScrape hoje mesmo e comece a integrá-lo com o Scrapoxy para uma experiência de raspagem suave, eficiente e poderosa.

Gostaríamos de conhecer as suas experiências com ProxyScrape e Scrapoxy! Partilhe as suas histórias de sucesso, desafios e dicas nos comentários abaixo. E não se esqueça de explorar mais conteúdos sobre raspagem da Web no nosso blogue. Boa raspagem!