Como Raspagem de Respostas do Qwen AI com o Navegador de Raspagem Sem Raspagem
Lead Scraping Automation Engineer
Principais Conclusões:
- Um compositor, um botão de envio, um nó de resposta. chat.qwen.ai ("Qwen Studio") renderiza um único compositor
textarea.message-input-textarea; digite nele, clique em.message-input-right-button-send, depois leia a resposta em.response-message-content.phase-answer. De ponta a ponta, o prompt "Qual é a capital da França?" retorna "A capital da França é Paris." - Uma sessão de convidado tem uma rodada; a próxima rodada precisa de login. Uma sessão anônima do Qwen responde a uma única pergunta, então uma tela "Bem-vindo / Fazer login" aparece antes da segunda rodada. O histórico da conversa, o upload de arquivos e a geração de imagens estão todos atrás dessa tela — trate-os como um pré-requisito autenticado, não como uma chamada de convidado.
- Espere pelo rodapé da resposta, não por um cronômetro. O Qwen transmite a resposta token por token. O sinal confiável de "pronto" é o rodapé da resposta (o controle de cópia
.copy-response-button) montando sob a mensagem — um sono fixo captura uma frase meio escrita. - O cartão de raciocínio é um nó separado da resposta. O Qwen renderiza um cartão "Pensamento completo" colapsável (
.qwen-chat-thinking-status-card-title-text) acima do corpo da resposta. Detecte-o por conta própria para que o texto de raciocínio nunca vaze para o seu campo de resposta. - Fixe a saída residencial e mantenha cada trabalho em um único shell. chat.qwen.ai personaliza e limita a taxa por IP, e o Scraping Browser lida com proxies, impressão digital e renderização como preocupações em nível de sessão, então seu código lida apenas com seletores e esperas.
- Gratuito para começar. Novas contas do Scrapeless incluem tempo de execução gratuito do Scraping Browser — inscreva-se em app.scrapeless.com.
Introdução: transformando as respostas do Qwen em dados estruturados
Qwen (da família Tongyi da Alibaba) é um dos assistentes de modelos de linguagem de grande porte mais amplamente utilizados, e as equipes querem suas respostas como dados: conjuntos de avaliação de modelos e regressão, monitoramento de respostas por marca e categoria, corpora de fundamentação multilíngue e testes de prompt lado a lado. A questão é que essas respostas não vivem em uma página HTML aberta. Elas são transmitidas para um aplicativo React hidratado em chat.qwen.ai — a interface se denomina "Qwen Studio" — e a resposta só existe no DOM depois que o aplicativo a renderiza e termina de transmiti-la.
Isso torna um simples fetch HTTP inútil: você obtém um shell de aplicativo vazio, sem resposta. O compositor, o controle de envio e o contêiner de resposta são todos nomes de classe específicos do aplicativo que mudam quando o Qwen lança uma atualização de UI, e uma segunda pergunta esbarra em uma parede de login. Portanto, a verdadeira tarefa é operar a interface do chat como um navegador faria, esperar que a transmissão se estabilize e puxar a resposta (e o cartão de raciocínio, quando um for renderizado) do DOM ao vivo.
Este post é um guia prático focado no terminal baseado no Scraping Browser do Scrapeless. Ele cria uma sessão na nuvem, abre o Qwen Studio, digita um prompt no compositor, espera a resposta terminar e lê de volta como JSON. Cada seletor e sinal abaixo é extraído de uma execução real do Scraping Browser contra chat.qwen.ai. Um guia complementar de pesquisa e resposta de IA está vinculado ao final.
O Que Você Pode Fazer Com Isso
- Construir conjuntos de dados de avaliação do Qwen. Fixe pares de perguntas/respostas por timestamp para rastrear desvios de respostas e alimentar suítes de regressão de modelos.
- Monitoramento de marca e categoria. Observe como o Qwen responde a perguntas sobre seu produto, seu espaço ou um tópico regulamentado e compare as respostas ao longo das semanas.
- Fundamentação de respostas multilíngue. Capture as respostas do Qwen em chinês e inglês para avaliação de recuperação cross-linguística.
- Testes A/B de prompt. Faça a mesma pergunta em várias formulações e compare o que volta.
- Marcação de rastreamento de raciocínio. Registre se uma consulta acionou uma passagem de raciocínio "Pensamento completo", para que você possa separar respostas rápidas de aquelas deliberadas.
- Coleta de citações. Quando um prompt empurra o Qwen a fundamentar sua resposta com fontes da web, colete os links das fontes que ele apresenta.
Por Que Escolher o Scraping Browser do Scrapeless
O Scraping Browser do Scrapeless é um navegador em nuvem personalizável e anti-detectável, projetado para raspadores da web e agentes de IA. Para chat.qwen.ai especificamente, ele traz:
- Proxies residenciais em mais de 195 países (
--proxy-country,--proxy-state,--proxy-city) — chat.qwen.ai personaliza e limita a taxa por IP, então a saída residencial é a primitiva de carga que suporta a coleta sustentada. - Renderização de JavaScript na nuvem — o Qwen Studio é um aplicativo de página única hidratado; o nó de resposta só existe depois que o aplicativo é montado e transmite, o que HTML estático nunca vê.
- Impressão digital anti-detectável em cada sessão — o navegador em nuvem, um navegador em nuvem anti-detectável alimentado por Chromium desenvolvido internamente, se apresenta como Chrome real para o aplicativo de chat.
- Persistência de sessão e perfis — mantenha um cookie de login do Qwen ativo entre chamadas, que é o que desbloqueia o caminho de várias rodadas no Passo 5.
- Uma única interface CLI — um binário
scrapeless-scraping-browserdirige navegação, digitação, cliques, esperas e avaliação, então todo o fluxo vive em um único shell.
Obtenha sua chave de API no plano gratuito em app.scrapeless.com. A página do produto Scraping Browser cobre o tempo de execução, e o conjunto completo de comandos está nos documentos da Scrapeless.
Pré-requisitos
- Node.js 18 ou mais recente.
- Uma conta Scrapeless e chave de API — inscreva-se em app.scrapeless.com.
jqpara parsing de JSON (opcional; uma alternativa grep é mostrada abaixo).- Para extração de múltiplas interações: uma conta Qwen que você controla. O fluxo de convidado de uma única interação não precisa de login; tudo após a primeira resposta precisa (Passo 5).
- Familiaridade básica com o terminal.
Instalar
As receitas abaixo funcionam no CLI scrapeless-scraping-browser. A configuração é feita em quatro passos curtos — usuários do CLI precisam do #1, #2 e #4; usuários de IA acrescentam o #3.
1. Instale o pacote CLI
bash
npm install -g scrapeless-scraping-browser
Isso fornece o binário scrapeless-scraping-browser que cada passo abaixo chama. A habilidade não vem com seu próprio tempo de execução — ela carrega padrões de comando em seu agente de IA, mas o CLI deve ser instalado primeiro.
2. Configure sua chave de API
Obtenha seu token em app.scrapeless.com, e então armazene-o onde o CLI possa lê-lo:
bash
scrapeless-scraping-browser config set apiKey seu_token_api_aqui
scrapeless-scraping-browser config get apiKey # verifique
O arquivo de configuração está em ~/.scrapeless/config.json com acesso restrito ao usuário atual, e ele tem prioridade sobre a variável de ambiente. Para executores de CI, prefira a variável de ambiente:
bash
export SCRAPELESS_API_KEY=seu_token_api_aqui
3. Instale a habilidade Scrapeless em seu agente de IA
Este é um passo separado do #1. O passo 1 instalou o binário do CLI — o tempo de execução que seu agente invoca. A habilidade é o que ensina seu agente a invocá-lo corretamente (o padrão descobrir → enviar → esperar → extrair, os seletores Qwen, a estratégia de espera). Eles são duas coisas diferentes e você precisa de ambas para o fluxo de trabalho orientado por prompt.
A habilidade é uma pasta contendo SKILL.md + skill.json + references/. A fonte canônica é o scrapeless-ai/scrapeless-agent-browser → skills/scraping-browser-skill repositório no GitHub; os comandos de instalação por agente estão nos documentos da Scrapeless. Recarregue seu agente após a instalação para que a habilidade fique ativa.
4. Verifique a instalação
Teste com um prompt seguro antes de usar o Qwen:
"Usando a habilidade Scrapeless, abra https://example.com e me diga o título da página."
Seu agente deve criar uma sessão, abrir a página e responder com "Example Domain". Se isso funcionar, você está pronto para usar o Qwen Studio.
Como você realmente usa isso: convoque seu agente
Após a instalação, você extrai informações do Qwen falando com seu agente — não copiando e colando comandos bash. A habilidade carrega os seletores do compositor/enviar/resposta do Qwen e a verificação de conclusão de fluxo no contexto do agente, portanto, um prompt de uma linha retorna um JSON de resposta limpo.
Prompts que você pode colar
| O que você diz ao seu agente | O que você recebe de volta |
|---|---|
| "Pergunte ao Qwen 'qual é a capital da França?' e me dê apenas a resposta." | A string de resposta do corpo da mensagem renderizada |
| "Pergunte ao Qwen 'explique RAG em duas frases' e retorne JSON com resposta + uma flag de raciocínio." | { answer, reasoning, model } |
| "Execute essas 5 perguntas no Qwen e salve em qwen-eval.json." | Um arquivo JSON, uma linha por pergunta/resposta |
| "Pergunte ao Qwen 'qual é a capital da França' em chinês em um IP de Cingapura." | Sessão criada com --proxy-country SG, prompt enviado em chinês |
| "Pergunte ao Qwen 'últimas novidades sobre o telescópio James Webb' e também capture quaisquer links de fontes que ele cite." | { answer, citations: [...] } |
| "O Qwen fez uma passagem de raciocínio em 'provar que sqrt(2) é irracional'?" | reasoning: "Pensamento completado" ou null |
Exemplo prático: uma resposta do Qwen como texto
Você digita:
"Pergunte ao Qwen 'Qual é a capital da França? Responda em uma frase curta.' e retorne apenas a resposta como texto."
O plano do agente (em inglês simples):
- Crie uma sessão residencial (a saída dos EUA é um bom padrão para o Qwen Studio).
- Abra
https://chat.qwen.ai/, então espere até que o compositortextarea.message-input-textareaesteja presente. - Preencha o compositor com a pergunta e clique em
.message-input-right-button-send. - Faça a verificação até que o rodapé da resposta (
.copy-response-button) seja montado — isso significa que o fluxo terminou. - Leia
.response-message-content.phase-answere retorne seu texto.
O que você recebe de volta:
A capital da França é Paris.
Essa é toda a interface voltada para o usuário. A descoberta de seletores, a verificação de conclusão e a formatação JSON nas Etapas 1–4 abaixo são o que a habilidade faz o agente executar — você não digita nenhuma delas.
Modelando prompts: como controlar o que vem de volta
| Formulação | Efeito |
|---|---|
| "…apenas a resposta" / "…com uma bandeira de raciocínio" | Quais campos o agente retorna |
| "…como JSON" / "…como texto simples" | Formato de saída |
| "…em chinês" / "…em inglês" | Idioma do prompt |
| "…em um IP de Singapura" / "…da Alemanha" | Define --proxy-country |
| "…salvar em qwen-eval.json" | Grava em arquivo |
| "…executar todas as 10 perguntas" | Laços — sessão nova por pergunta |
As Etapas 1–6 abaixo são a referência interna — leia-as uma vez para ver como o padrão abrir → enviar → aguardar → extrair se compõe, depois confie no seu agente para aplicá-lo. A programação fora de um agente funciona exatamente como mostrado; a habilidade é apenas o caminho mais rápido.
Etapa 1 — Conectar ao Navegador de Scrapeless Scraping
Crie uma sessão com saída residencial antes de abrir qualquer página. A geografia do proxy é fixa enquanto a sessão durar.
bash
SESSION=$(scrapeless-scraping-browser new-session \
--name "qwen-us" \
--ttl 1800 \
--proxy-country US \
--json | jq -r '.data.taskId')
echo "Sessão: $SESSION"
Fallback portátil sem jq:
bash
SESSION=$(scrapeless-scraping-browser new-session \
--name "qwen-us" --ttl 1800 --proxy-country US --json \
| grep -oE '"taskId":"[^"]*"' | cut -d'"' -f4)
A saída residencial dos EUA renderiza o Qwen Studio de forma limpa. O Qwen é um produto global, então qualquer país residencial estável funciona; combine a geografia com o local que você deseja que o Qwen responda.
Etapa 2 — Abrir o Qwen Studio e escolher a espera certa
Abra chat.qwen.ai, então decida uma estratégia de espera. Um aplicativo de chat mantém uma conexão ativa aberta para streaming, portanto --load networkidle raramente alcança uma janela silenciosa — tende a travar. O padrão confiável é uma wait fixa seguida por um verificador de prontidão que conta o compositor.
bash
scrapeless-scraping-browser --session-id $SESSION open "https://chat.qwen.ai/"
scrapeless-scraping-browser --session-id $SESSION wait 4000
# Sinal de prontidão: o único textarea do compositor foi montado.
scrapeless-scraping-browser --session-id $SESSION eval \
'document.querySelectorAll("textarea.message-input-textarea").length' # espera 1
| Estratégia | Comportamento no Qwen Studio | Recomendação |
|---|---|---|
wait --load networkidle |
Conexão de streaming mantém a rede ocupada; raramente se estabiliza | Evitar para chat.qwen.ai |
wait 4000 (fixa) |
Determinística — o aplicativo já foi hidratado até então | Padrão |
eval contagem do compositor === 1 |
Verdadeira prontidão — o input é interativo | Use como porta antes de digitar |
O título da página lê "Qwen Studio" e a faixa mostra o rótulo do modelo ativo (por exemplo, Qwen3.7-Plus) ao lado de um seletor de modo definido como Auto. Você não precisa mudar nenhum dos dois para ler uma resposta.
Etapa 3 — Submeter um prompt
O Qwen Studio expõe exatamente um compositor, textarea.message-input-textarea. O controle de envio é ativado somente quando o compositor contém digitações reais — um fill programático define o valor sem disparar o estado de entrada do compositor, então o botão permanece inerte. Digite o prompt letra por letra, dê um momento para a interface, em seguida, clique em enviar.
Se você estiver conectando isso a uma nova versão, descubra os seletores primeiro, em vez de confiar neles de modo literal — o Qwen rotaciona nomes de classe em cada lançamento:
bash
# Descobrir: confirmar o compositor e qualquer controle de envio antes de utilizá-los.
scrapeless-scraping-browser --session-id $SESSION get html "main"
Então submeta:
bash
PROMPT="Qual é a capital da França? Responda em uma frase curta."
scrapeless-scraping-browser --session-id $SESSION type \
"textarea.message-input-textarea" "$PROMPT"
# O botão de envio é ativado uma vez que as digitações reais entram no compositor.
scrapeless-scraping-browser --session-id $SESSION wait 600
scrapeless-scraping-browser --session-id $SESSION click ".message-input-right-button-send"
Pressionar Enter no compositor focado submete o mesmo prompt — pressionar Enter após o type é um caminho equivalente, útil quando o botão de envio ainda não foi ativado.
Ao submeter, o Qwen redireciona a URL de / para /c/new-chat para /c/guest e renderiza sua pergunta como uma mensagem do usuário, com a resposta do assistente montada abaixo.
Obtenha sua chave de API no plano gratuito: app.scrapeless.com
Passo 4 — Aguarde o fluxo e, em seguida, extraia a resposta
O Qwen transmite a resposta token por token, então ler o DOM muito cedo lhe dá uma frase parcial. O sinal de conclusão limpa é o rodapé de cada mensagem — o controle de cópia (.copy-response-button) aparece somente após o término do fluxo. Verifique isso periodicamente e, em seguida, execute um extrator.
bash
# Poll de conclusão: o controle de cópia é montado quando a resposta é totalmente renderizada.
for i in 1 2 3 4 5 6 7 8; do
DONE=$(scrapeless-scraping-browser --session-id $SESSION eval '
document.querySelector(".chat-response-message .copy-response-button") ? "done" : "streaming"
' | tail -1 | tr -d '"')
[ "$DONE" = "done" ] && break
sleep 1
done
# Extrair: corpo da resposta, sinal de raciocínio e quaisquer links de origem — guardados por campo.
scrapeless-scraping-browser --session-id $SESSION eval '
(function(){
const msg = document.querySelector(".qwen-chat-message-assistant, .chat-response-message");
if (!msg) return JSON.stringify({ answer: null });
const body = msg.querySelector(".response-message-content.phase-answer, .custom-qwen-markdown");
const reasoning = msg.querySelector(".qwen-chat-thinking-status-card-title-text");
const cites = Array.from(msg.querySelectorAll(".qwen-markdown a[href^=\"http\"]"))
.map(a => ({ url: a.href, text: a.textContent.trim().slice(0, 80) }));
return JSON.stringify({
url: location.href,
reasoning: reasoning ? reasoning.textContent.trim() : null,
answer: body ? body.textContent.trim() : null,
citations: cites,
});
})()
'
Na execução de verificação, isso retornou o texto real da resposta A capital da França é Paris., um valor de raciocínio de Raciocínio concluído (o cartão de raciocínio colapsado estava presente) e um array citations vazio — um prompt factual curto não leva o Qwen a usar fontes da web.
Notas sobre seletores:
- A mensagem do assistente está envolvida em
.qwen-chat-message-assistant(também acessível via.chat-response-message); o texto da resposta está em.response-message-content.phase-answer, renderizado como parágrafos.qwen-markdown. - O cartão de raciocínio (
.qwen-chat-thinking-status-card-title-text) é um irmão do corpo da resposta, e não um filho dele — consulte-o separadamente para que o rótulo "Raciocínio concluído" nunca caia em seu campoanswer. - Trate
citationscomo anulável. Ele é preenchido apenas quando o Qwen exibe links de origem para um prompt fundamentado na web.
Passo 5 — Sessões autenticadas de múltiplas interações (pré-requisito)
A interface de convidado responde exatamente a uma pergunta. Após a primeira resposta, o Qwen exibe um modal de "Bem-vindo" — "Faça login ou inscreva-se para conversar com o Qwen, enviar arquivos e imagens, gerar imagens ou vídeos, e mais" — com botões Fazer login, Inscrever-se e Permanecer desconectado. "Permanecer desconectado" permite que você continue lendo a única resposta que já tem, mas uma segunda interação, histórico de conversas, upload de arquivos e geração de imagem ou vídeo exigem uma conta.
Essa barreira de login é um pré-requisito, não algo a ser falsificado. Para extrair uma conversa de múltiplas interações:
- Persista o estado de login, porque uma sessão termina quando sua conexão é encerrada. Injete os cookies da sessão do Qwen que você exportou de uma conta que você possui com o
cookies setda CLI, ou salve as credenciais uma vez no Auth Vault (auth save <name>) e reproduza-as comauth login <name>em uma nova sessão — consulte a documentação do Scrapeless para as flags de cookie e autenticação. - Reutilize esse estado em cada chamada em vez de re-autenticar a cada interação.
- Conduza a conversa com o mesmo tipo → clique → aguarde → extraia loop dos Passos 3–4; cada nova interação adiciona outro nó
.qwen-chat-message-assistantque você lê da mesma maneira. Para uma sessão de múltiplas interações que deve durar mais do que uma única conexão, o caminho TypeScript@scrapeless-ai/sdkmantém a conexão persistente que a CLI não possui.
Mantenha as credenciais em variáveis de ambiente ou em seu gerenciador de segredos, nunca no script. Uma resposta de convidado de uma única interação não precisa de nada disso; acesse o fluxo autenticado apenas quando o pipeline realmente precisar de mais de uma interação.
Passo 6 — Escalonamento: isolar o estado de CLI por trabalhador
Executar vários trabalhos do Qwen simultaneamente em um único host requer cuidado, porque a CLI compartilha o estado do daemon entre shells. Os primitivos que suportam carga paralela:
-
Encadeamento de shell único. Execute toda a sequência de um trabalho em uma única invocação atômica de shell, assim outros trabalhadores não podem intercalar entre seus passos. Um aviso sobre o operador de encadeamento:
opensai com código não zero mesmo em uma navegação bem-sucedida (algumas páginas fazem com que opage.gotosubjacente lance um erro após a página já estar utilizável), então separe-o com;em vez de&&e investigue o estado comeval 'location.href'em vez de depender de seu código de saída —new-session && open "https://chat.qwen.ai/" ; wait 4000 && type … && click … && eval …. Essa atomicidade de shell único é o primitivo de sustentação. -
Nomes de sessão únicos por trabalhador. O daemon compartilha estado entre shells, então um nome de sessão único impede que as chamadas de um trabalhador sejam roteadas para a sessão de outro.
-
Limite de ~3 trabalhadores concorrentes por host. Além disso, a contenção se acumula. Para mais distribuição, divida os trabalhadores em hosts separados — o estado do daemon é por host, não por conta.
Para um pipeline de avaliação constante, sequencial por host é simples e suficiente: uma pergunta do Qwen de cada vez, coloque as outras na fila.
O Que Você Recebe de Volta
O extrator da Etapa 4 retorna url, raciocínio, resposta e citações; os campos consulta, modelo e autenticado são enriquecidos ao seu redor — o prompt que você enviou, o rótulo do modelo exibido na Etapa 2 e se a sessão foi logada. Cada valor abaixo é de uma captura real.
json
{
"consulta": "Qual é a capital da França? Responda em uma frase curta.",
"url": "https://chat.qwen.ai/c/guest",
"modelo": "Qwen3.7-Plus", // lido do rótulo do modelo exibido; fixe para que as linhas de avaliação permaneçam comparáveis
"raciocínio": "Pensamento concluído", // nulo quando a consulta não acionou uma passagem de raciocínio
"resposta": "A capital da França é Paris.",
"citações": [], // populado apenas quando o Qwen fundamenta com fontes da web
"autenticado": false // convidado = uma ação; verdadeiro quando você reutiliza uma sessão logada
}
Observações honestas:
- A resposta é transmitida, então leia-a apenas após o rodapé da resposta ser montado (Etapa 4) — caso contrário, você captura uma frase incompleta.
raciocínioénulopara muitos prompts factuais curtos. O Qwen só exibe o cartão "Pensamento concluído" quando realizou uma passagem de raciocínio, então use-o como um sinal, não como uma garantia.citaçõespermanece vazio a menos que o prompt force o Qwen a fundamentar sua resposta com fontes da web. Proteja o campo como anulável a jusante.autenticado: falseé um estado válido, não uma falha — a superfície de convidado responde a uma pergunta, e a barreira de login (Etapa 5) é o limite para qualquer coisa mais.- O rótulo do modelo exibido reflete qual modelo foi definido como padrão no Qwen Studio; registre-o por linha para que uma troca de modelo não misture silenciosamente seu conjunto de avaliação.
Conclusão
Raspar o Qwen se resume a tratar chat.qwen.ai como o aplicativo de streaming que ele é: crie uma sessão de nuvem residencial, abra o Qwen Studio, digite no único compositor, aguarde o rodapé da resposta ser montado e leia a resposta do DOM hidratado. Proteja cada campo como um sinal real — o corpo da resposta separado do cartão de raciocínio, citações como anuláveis — para que seu esquema permaneça confiável quando o Qwen lançar uma alteração na interface do usuário. Lembre-se do limite: uma sessão de convidado é boa para uma resposta limpa, e tudo além disso vive atrás da barreira de login, então busque o fluxo autenticado, persistido por cookies, somente quando múltiplas interações forem realmente necessárias. Para o lado de busca e resposta de IA do mesmo padrão, veja como raspar resultados de pesquisa do Google com o Scrapeless Scraping Browser, e compare tempos de execução e planos na página de preços.
Pronto para Construir Seu Pipeline de Dados Potenciado por IA?
Junte-se à nossa comunidade para reivindicar um plano gratuito e conectar-se com desenvolvedores que constroem pipelines de extração de respostas de LLM: Discord · Telegram.
Inscreva-se em app.scrapeless.com para tempo de execução gratuito do Scraping Browser e adapte os padrões acima aos prompts, locais e conversas autenticadas que seu pipeline precisa.
FAQ
P: Raspar o Qwen é legal?
R: Coletar respostas visíveis publicamente para análises, avaliação de modelo e pesquisa é amplamente permitido na maioria das jurisdições, mas os termos de serviço do Qwen e da Alibaba ainda se aplicam, e as leis variam por região. Revise os termos alvo antes do uso comercial e consulte um advogado, especialmente em relação ao armazenamento de conteúdo gerado ou qualquer coisa que toque em dados pessoais.
P: Eu preciso de um proxy?
A: Sim. chat.qwen.ai personaliza e limita por IP, e um único IP bruto atrai limitação rapidamente. Fixe a saída residencial com --proxy-country (Passo 1); faça corresponder o país ao local que você deseja que o Qwen responda.
Q: O Qwen mostra uma tela de "Bem-vindo / Fazer login" — como consigo um render limpo?
A: Para uma única resposta, a área de convidados funciona sem login — aqueça a sessão abrindo https://chat.qwen.ai/ primeiro e confirmando que o compositor está montado (Passo 2) antes de digitar, e mantenha a saída residencial fixa. Apenas o caminho de múltiplas interações precisa de uma conta; esse é o pré-requisito autenticado no Passo 5, onde cookies injetados ou o Auth Vault mantêm o login entre chamadas.
Q: Os seletores pararam de corresponder após uma atualização do Qwen — o que fazer agora?
A: O Qwen Studio rotaciona nomes de classes entre lançamentos. Redescubra o DOM ao vivo com get html "main" e aperte seus seletores em relação ao que está realmente renderizado. Apoie-se nos âncoras estáveis: o compositor único textarea.message-input-textarea, o wrapper do assistente .qwen-chat-message-assistant, e o corpo da resposta .response-message-content.phase-answer.
Q: Quantas sessões do Qwen posso executar em paralelo?
A: Mantenha cerca de três trabalhadores por host, encadene as chamadas de CLI de cada trabalho em um único shell e dê a cada trabalhador um nome de sessão exclusivo (Passo 6). Para mais throughput, distribua entre hosts em vez de empilhar trabalhadores em um só.
Q: Posso fazer isso sem um agente de IA?
A: Sim. O bash acima roda de ponta a ponta por conta própria. A habilidade simplesmente permite que seu agente conduza o mesmo ciclo aberto → enviar → esperar → extrair a partir de um prompt de uma linha, que é o caminho recomendado, mas não uma exigência.
Q: Como capturo o traço de raciocínio do Qwen?
A: Detecte o cartão de raciocínio com .qwen-chat-thinking-status-card-title-text; o rótulo colapsado "Pensamento concluído" indica que uma passagem de raciocínio foi executada. Consulte-o separadamente de .response-message-content.phase-answer para que o texto de raciocínio e a resposta final permaneçam em campos distintos, e expanda o cartão se precisar da cadeia em si.
Q: O Qwen responderá em chinês ou inglês?
A: Depende da língua do prompt e do local da conta ou proxy. Pergunte na língua alvo e fixe um --proxy-country correspondente para manter as respostas consistentes em um conjunto de avaliação multilíngue.
Na Scorretless, acessamos apenas dados disponíveis ao público, enquanto cumprem estritamente as leis, regulamentos e políticas de privacidade do site aplicáveis. O conteúdo deste blog é apenas para fins de demonstração e não envolve atividades ilegais ou infratoras. Não temos garantias e negamos toda a responsabilidade pelo uso de informações deste blog ou links de terceiros. Antes de se envolver em qualquer atividade de raspagem, consulte seu consultor jurídico e revise os termos de serviço do site de destino ou obtenha as permissões necessárias.



