O que acontece quando você clica em Exportar?
O Exemplo do navegador Notes tem um Notas de exportação botão. Clicar nele carrega notes.json, Formata as duas notas como CSV e inicia um download.
Do clique ao download do CSV
- 01 * VocêClique em Exportar notasExecute a ação no seu navegador enquanto a captura estiver em execução.
- 02 * REA Registar o pedidoCapture o URL da solicitação, o status da resposta e a estrutura JSON da página selecionada.
-
03 * o seu agenteLer o código de exportaçãoLigar o pedido observado ao
fetch("./notes.json")emexport.js.
GET notes.json → 200 → notes[] → CSV
Abrir Chrome com depuração remota
Abra o exemplo do hosted Notes com um perfil de navegador separado e uma porta de depuração local. Em Linux :
google-chrome \
--remote-debugging-port=9222 \
--user-data-dir=/tmp/rea-notes-browser \
https://reverseengineeranything.app/examples/notes-web/
Use o caminho executável do navegador instalado em macOS ou Windows . Você pode substituir o URL da página por outra página que deseja inspecionar.
REA se conecta a este navegador existente. Você mantém o controle da página, executa a ação e fecha o navegador quando terminar.
Peça ao seu agente para assistir a uma ação
Use REA para inspecionar esta página enquanto clico em Exportar notas. Que Pedido faz e como é construído o CSV?
Exemplo de alerta. Dê ao seu agente o ponto de extremidade de depuração, http://127.0.0.1:9222, e o URL da página. Deixe-o iniciar a captura antes de clicar.
Seu agente descobre o destino da página, inicia uma janela de observação e lê as evidências resultantes. Ele pode então inspecionar o script por trás da exportação.
Ou captura a partir do terminal
Encontrar o ID de destino da página:
npx -y rea-agents@latest list-browser-targets \
http://127.0.0.1:9222 --json
Escolha o destino com o URL de exemplo do Notes. Substituir TARGET_ID abaixo com o seu ID, em seguida, executar:
npx -y rea-agents@latest inspect-web-page \
http://127.0.0.1:9222 TARGET_ID \
--observation-ms 10000 \
--include-accessibility-text \
--include-json-body-shapes --json
Deixe o comando se conectar por alguns segundos e clique em Notas de exportação nesse navegador. O resultado chega após o fim da janela de observação.
O resultado capturado inclui a página selecionada, a atividade da rede durante essa janela e a forma da resposta JSON. Os pedidos anteriores estão fora desta captura.
Leia o script de solicitação e exportação
| Facto capturado | Valor |
|---|---|
| Pedido | GET /examples/notes-web/notes.json |
| Resposta | 200 · application/json |
| Iniciador do pedido | export.js * roteiro |
| Estrutura de resposta |
notes[] com id e title campos
|
npx -y rea-agents@latest inspect-web-page \
http://127.0.0.1:9222 TARGET_ID \
--include-script-sources --json
A solicitação identifica a fonte de dados e os registros REA export.js como seu iniciador. Leia a fonte do script capturado para ver como os dados são usados:
const response = await fetch("./notes.json");
const { notes } = await response.json();
// Format each note as a CSV row.
const url = URL.createObjectURL(new Blob([csv], { type: "text/csv" }));
link.href = url;
link.download = "notes.csv";
link.click();
O download é construído na página usando a resposta JSON. A etapa de formatação CSV vem do script; a captura de rede estabelece que este Clique solicitado notes.json.
Abra o exemplo · Baixar export.js · Baixar notes.json
Encontre o script que solicita
notes.json. Como escapam os títulos que contêm vírgulas ou aspas?
Para um aplicativo JavaScript ou Electron instalado, continue com o fluxo de trabalho da aplicação para seguir arquivos e limites do processo.