TodosNovoMelhoriaCorrigido
Corrigido

O Browser captura o status real após a liberação do Cloudflare

Quando um alvo protegido pelo Cloudflare servia uma página real de bloqueio geográfico (451) após o desafio ser aprovado, o produto Browser relatava o status como 200 porque o watcher tinha o status de liberação fixado no código. Agora, o watcher lê o Document real após a liberação, portanto um 200 continua 200, um 451 aparece como 451, e o Auto rejeita o conteúdo errado e continua buscando uma saída que realmente corresponda às suas regras validate.

Corrigido

Cmd+K abre em teclados não latinos

O atalho Cmd+K (Ctrl+K) agora abre a paleta de comandos e o modal de pesquisa, independentemente do layout do teclado. Estávamos correspondendo o caractere digitado (к em um layout cirílico), então qualquer pessoa em um layout não latino não obtinha resposta. Agora, correspondemos a tecla física. Corrigido no site principal, no blog e na documentação.

Corrigido

O Auto utiliza todo o seu orçamento em resoluções frias

Uma resolução fria do Auto pode levar vários minutos, e a request agora permanece aberta durante todo o seu orçamento. Erros de qualquer camada retornam como JSON que o seu cliente pode processar.

Corrigido

Amortiza automaticamente para 2 créditos em requests repetidos

Sites com cookies reutilizáveis (bet365 foi o canário) estavam travando na resolução cara do browser a 15 créditos por request em vez de cair para o replay barato de 2 créditos após a primeira resolução. Dois bugs: a trava acionava em qualquer erro de transporte transitório, e um replay de browser bem-sucedido nunca atualizava os cookies de sessão. Ambos foram corrigidos. Requests repetidos em um site com cookies reutilizáveis agora custam 2 créditos após a primeira resolução, exatamente como o preço indica.

Corrigido

Acesso cross-origin restrito na API

Restringimos o acesso cross-origin para que apenas foura.ai possa chamar a API com credenciais. Também reforçamos um filtro de entrada no endpoint de métricas e removemos um segredo de fallback exclusivo de desenvolvimento. As integrações existentes não mudam.

Corrigido

Regras de validação personalizadas contam como sucesso

Se você definiu validate.status.accept em um request, o mecanismo trata um não-200 aceito como um sucesso limpo. O Activity ainda estava rotulando esses casos como falhas, o que distorcia suas estatísticas de uso. Os resultados agora seguem o seu veredito de validação, de modo que um 403 aceito por você aparece como sucesso, e não como App Fail.

Corrigido

Páginas não UTF-8 agora decodificam corretamente

Se você estava fazendo scraping de páginas em cirílico, chinês, japonês ou outras páginas não UTF-8 via Single, o corpo costumava retornar como mojibake. Nós forçávamos a decodificação de cada response como UTF-8 antes de você ver os bytes brutos. Agora lemos o charset do response (Content-Type, depois <meta charset>, depois fallback para UTF-8) e o decodificamos corretamente. Obrigado, Alexandar Kanchev (Sensika), por reportar isso.

Corrigido

Detectamos proxies falsos que ecoam seu request de volta

Alguns proxies em circulação não encaminham de fato o seu request. Eles o ecoam de volta como um dump de servidor em plaintext e tentam capturar o que está dentro. Agora detectamos esse padrão antes que o response chegue ao seu código, de modo que o Single, o Browser e o Proxy Finder retornam uma falha real (ou retry) em vez de lixo.

Corrigido

Proxies recém-descobertos chegam mais rápido ao pool

Corrigimos uma lentidão que deixava proxies recém-descobertos aguardando antes de serem validados. O Proxy Finder agora os verifica imediatamente, de modo que o pool permanece mais atualizado, com mais proxies ativos e funcionais em rotação.

Corrigido

Cookies do Playground seguem as regras host-only da RFC 6265

O Playground agora acompanha o atributo Domain corretamente, de modo que os cookies restritos ao host permaneçam em seu host. A visualização Parsed os marca com um selo HO, e a visualização Raw corresponde ao que o upstream enviou.

Corrigido

Campos do Playground correspondem ao schema real da API

Todos os campos do Playground agora estão alinhados ao schema: o Browser força GET, oculta o textarea do body, e a aba Raw mostra o JSON exato que atinge a API, além de um reprodutor curl.

Corrigido

Unblocker funciona de ponta a ponta no Single e Proxy Finder

Com unblocker: true, o Single e o Proxy Finder agora levam a assinatura completa do unblocker até a origem, para que as barreiras anti-bot que a verificam deixem a requisição passar.

Corrigido

Desafios passivos do Cloudflare resolvidos no Browser

Alguns sites da Cloudflare retornam 200 OK, mas injetam um script em segundo plano que emite o cookie cf_clearance real um momento depois. O Browser costumava retornar a página antes da chegada desse cookie, deixando o jar vazio. Agora o Browser espera pelo evento do cookie, então você obtém um cf_clearance limpo que pode reproduzir através do Single ou Proxy.

Corrigido

Links de paginação do blog agora funcionam

O botão Anterior no blog costumava levar você de volta para a página 1. A paginação agora está em URLs /blog/page/N/ com navegação numerada, para que você possa realmente navegar por posts mais antigos. Obrigado, Vladimir Petrov.

Corrigido

Navegador executa JavaScript em cada request

O navegador agora executa cada request através do motor de JavaScript, para que os desafios da Cloudflare e as páginas com muito JS sejam renderizados conforme o esperado.