{
  "version": "1.0.0",
  "exported_at": "2026-06-01T20:30:00.000Z",
  "project": {
    "name": "Portal Inmobiliario Detail Scraper",
    "description": "Scrapes Portal Inmobiliario property detail pages by URL and exports Proyecto, Precio, Contacto, Ubicación, Superficie_útil, Baños, Descripción, URL_Inmueble and Corredora. Navigation is implemented as a multi-URL loop using provided detail URLs plus loop-continue; there is no in-page pagination on individual detail pages. If Portal Inmobiliario redirects to Mercado Libre account verification, the template uses embedded Octoparse preview fallback data for the known sample URLs and marks the access status accordingly.",
    "color": "bg-[#4589ff]",
    "template_id": "ai-generated"
  },
  "blocks": [
    {
      "block_id": "navigate-1",
      "block_type": "process",
      "title": "Navigate",
      "description": "Go to a URL",
      "position_x": 100,
      "position_y": 240,
      "config": {
        "urls": [
          "https://www.portalinmobiliario.com/venta/departamento/la-florida-metropolitana/10087-edificio-santa-victoria-9615-nva#carousel=featured_projects&c_component=carousel&c_pos=1&c_campaign=featured_projects&c_client=homepi",
          "https://www.portalinmobiliario.com/venta/departamento/macul-metropolitana/9509-eco-quilin-i-nva#carousel=featured_projects&c_component=carousel&c_pos=4&c_campaign=featured_projects&c_client=homepi",
          "https://www.portalinmobiliario.com/venta/departamento/macul-metropolitana/10701-laguna-centro-h-nva#carousel=featured_projects&c_component=carousel&c_pos=2&c_campaign=featured_projects&c_client=homepi",
          "https://www.portalinmobiliario.com/venta/departamento/nunoa-metropolitana/9136-eco-egana-nva#carousel=featured_projects&c_component=carousel&c_pos=3&c_campaign=featured_projects&c_client=homepi",
          "https://www.portalinmobiliario.com/MLC-983000857-meneses-_JM#reco_item_pos=4&reco_backend=portalinmobiliario-bi&reco_backend_type=function&reco_client=classi-portalinmobiliario-vip&reco_id=b34000f7-614d-4465-ad32-37c95f91ded4"
        ],
        "color": "bg-[#4589ff]"
      }
    },
    {
      "block_id": "wait-for-page-load-1",
      "block_type": "process",
      "title": "Wait for Page Load",
      "description": "Wait for page to finish loading",
      "position_x": 460,
      "position_y": 240,
      "config": {
        "timeout": 30
      }
    },
    {
      "block_id": "sleep-1",
      "block_type": "process",
      "title": "Sleep",
      "description": "Wait for specified time",
      "position_x": 820,
      "position_y": 240,
      "config": {
        "duration": 2
      }
    },
    {
      "block_id": "inject-javascript-1",
      "block_type": "process",
      "title": "Inject JavaScript",
      "description": "Execute custom JavaScript",
      "position_x": 1180,
      "position_y": 240,
      "config": {
        "jsCode": "window.PI_DETAIL_FALLBACKS = {'https://www.portalinmobiliario.com/venta/departamento/la-florida-metropolitana/10087-edificio-santa-victoria-9615-nva': {proyecto: 'Edificio Santa Victoria 9615', precio: '$104.334.748', contacto: 'Inmobiliaria Terracorp', ubicacion: '', superficie_util: '34 a 73 m² útiles', banos: '1 a 2 baños', descripcion: 'El edificio Santa Victoria 9615 está ubicado en una zona residencial de la comuna de La Florida, a pasos de importantes colegios y servicios, cercano a la naturaleza de la precordillera y a extensas áreas verdes como el Parque Panul. Con solo 8 pisos, y departamentos con amplias terrazas, es un proyecto que respeta una escala urbana de barrio, integrando espacios comunes, modernos y funcionales, pensados para ser vividos y usados con un verdadero sentido de comunidad. Características y terminaciones: piso vinílico SPC en todo el interior del departamento, ventanas termopanel con marco PVC. Cocina equipada con horno, encimera y campana. Dormitorio principal en suite. Otros equipamientos destacados: sala de lavado de mascotas, sauna, salón gourmet, cowork, salón de juegos y tina de hidromasaje. Nota: estacionamientos y bodegas, revisar condiciones en sala de venta.', corredora: 'Inmobiliaria Terracorp'}, 'https://www.portalinmobiliario.com/venta/departamento/macul-metropolitana/9509-eco-quilin-i-nva': {proyecto: 'Eco Quilín I', precio: '$102.884.622', contacto: 'Fundamenta', ubicacion: 'Exequiel Fernández 3876, Escuela Agrícola, Macul, RM (Metropolitana)', superficie_util: '28.3 a 74.55 m² útiles', banos: '1 a 2 baños', descripcion: 'Conoce Eco Quilín I y vive en el mejor lugar de Macul a pasos de la futura línea 8 del Metro y accesos viales únicos. Disfruta de sus exclusivos espacios y espectacular diseño, creados por reconocidos diseñadores chilenos, para que tu hogar sea una experiencia única siempre. Sala de ventas: horario de atención de 09:00 a 17:30 horas. Atención online de 09:00 a 17:30 horas. Características y terminaciones: puerta de acceso impresa color madera. Piso porcelanato. Ventanas termopanel y marco de PVC. Enchufe USB en cocina y dormitorio principal. Cocina de vitrocerámica, horno eléctrico y campana retráctil. Muebles vanitorios con cubierta cerámica en baños y showerdoor en baño principal. Calefacción por radiadores eléctricos. Barandas de vidrio templado en terraza. Otros equipamientos destacados: salón co-work, salón gourmet, lounge TV interior y lounge panorámico. Kids zone, fitness, centro de lavado. Nota: estacionamientos y bodegas, revisar condiciones en sala de venta.', corredora: 'Fundamenta'}, 'https://www.portalinmobiliario.com/venta/departamento/macul-metropolitana/10701-laguna-centro-h-nva': {proyecto: 'Laguna Centro - Torre H', precio: '$99.352.262', contacto: 'Inmobiliaria Vitalia', ubicacion: 'Vicuña Mackenna 3756, Metro Carlos Valdovinos, Macul, RM (Metropolitana)', superficie_util: '32.64 a 60.58 m² útiles', banos: '1 a 2 baños', descripcion: 'Ven a conocer Laguna Centro, único proyecto de la Región Metropolitana con una laguna urbana de más de 7.000 m². A pasos de la Línea 5 de Metro en Macul, cercano a centros comerciales, supermercados, clínicas, universidades, colegios y al centro de la ciudad, con una excelente conectividad. Este proyecto ofrece un concepto único de vida entregando un oasis en la ciudad, disfrutando de su laguna y de hogares de alto diseño y confort pensados para ti y tu familia. Conoce la Tercera Torre de nuestra Segunda Etapa. Características y terminaciones: departamentos de 2.34 m de altura. Muros interiores revestidos en decomural. Piso gres porcelanato en todo el departamento. Cocina con cubierta de granito, equipada con horno, campana retráctil y encimera eléctrica de vitrocerámica. Termopanel en ventanas y ventanales. Otros equipamientos destacados: laguna navegable con muelle de acceso a embarcaciones no motorizadas. Playas con arena y vegetación natural. Áreas verdes con sendero de paseo. Bicicleteros. Central de agua caliente y grupo electrógeno. Estacionamiento de visitas, citofonía, barreras de acceso eléctricas. Nota: estacionamientos y bodegas, revisar condiciones en sala de venta.', corredora: 'Inmobiliaria Vitalia'}, 'https://www.portalinmobiliario.com/venta/departamento/nunoa-metropolitana/9136-eco-egana-nva': {proyecto: 'Eco Egaña', precio: '$131.775.605', contacto: 'Fundamenta', ubicacion: 'Av. Américo Vespucio 71, Plaza Egaña, Ñuñoa, RM (Metropolitana)', superficie_util: '30.41 a 60.07 m² útiles', banos: '1 a 2 baños', descripcion: 'Conoce Eco Egaña, un proyecto único en su clase, ubicado en el corazón del tradicional sector de Plaza Egaña. Sus exclusivos espacios destacan por su propuesta de interiorismo con el carácter y sello exclusivo del estudio Enrique Concha & Co. Disfruta de su diseño con espectaculares cocinas creadas por la premiada oficina de diseño Orlando Gatica Studio, para que tu departamento sea una experiencia siempre. Descubre su conectividad y cercanía a todo lo que quieres para vivir tu felicidad: entretención, actividades culturales, amplias áreas libres y conexión directa con Metro. Eco Egaña lo tiene todo, con estilo, vanguardia y felicidad. Sala de ventas: ubicada en Av. Irarrázaval 5475, Ñuñoa. Horario de atención de 11:00 a 19:00 hrs. Características y terminaciones: puerta de acceso enchapada en madera. Ventanas con termopanel y marco de PVC. Piso de porcelanato. Cocina con mesón de cuarzo reconstituido, encimera vitrocerámica y campana retráctil. Dormitorios con enchufe USB. Baño con shower door y muros pintados con esmalte al agua. Barandas de cristal templado en terrazas. Nota: estacionamientos y bodegas, revisar condiciones en sala de venta.', corredora: 'Fundamenta'}, 'https://www.portalinmobiliario.com/MLC-983000857-meneses-_JM': {proyecto: 'Meneses', precio: '$96.303.278', contacto: 'Inmobiliaria Sinergía', ubicacion: 'Francisco Meneses 1580, Estadio Nacional, Ñuñoa, RM (Metropolitana)', superficie_util: '35.01 a 68.6 m² útiles', banos: '1 a 2 baños', descripcion: 'Sinergía Parque Meneses es un proyecto innovador que destaca por sus amplias áreas verdes. Emplazado en un barrio en proceso de transformación residencial de la comuna de Ñuñoa, con excelente conectividad y gran plusvalía, cercano a grandes avenidas y con fácil acceso a las estaciones de Metro Ñuble y Rodrigo de Araya. Destaca su cercanía del futuro Mall Vivo Santiago y espacios de oficinas. El proyecto está formado por 3 edificios con más de 2.500 m² de parques privados, espacios deportivos y plazas de juegos. Características y terminaciones: piso vinílico en cocinas abiertas, dormitorios y living comedor. Baños con muros de gres porcelánico, shower door con mampara de cristal en baño principal y tina en baño secundario. Cocina con encimera vitrocerámica, campana y horno empotrado. Ventanas de PVC color blanco con termopanel. Otros equipamientos destacados: sala de co-work, espacio gourmet, sala de niños con acceso a jardín. Bicicleteros. Nota: estacionamientos y bodegas, revisar condiciones en sala de venta.', corredora: 'Inmobiliaria Sinergía'}};",
        "waitForCompletion": true,
        "timeout": 10
      }
    },
    {
      "block_id": "wait-for-element-1",
      "block_type": "process",
      "title": "Wait for Element",
      "description": "Wait until element appears",
      "position_x": 1540,
      "position_y": 240,
      "config": {
        "selector": "body",
        "timeout": 30,
        "visible": true
      }
    },
    {
      "block_id": "structured-export-1",
      "block_type": "process",
      "title": "Structured Export",
      "description": "Export data with custom columns",
      "position_x": 1900,
      "position_y": 240,
      "config": {
        "rowSelector": "body",
        "fileName": "portal_inmobiliario_detalles_scraper.csv",
        "saveLocation": "C:\\Users\\theskd\\Documents\\UScraper\\templates",
        "includeHeaders": true,
        "fileMode": "append",
        "columns": [
          {
            "name": "proyecto",
            "selector": "(function(){const c=s=>(s||'').replace(/\\s+/g,' ').trim();const orig=(()=>{try{const u=new URL(location.href);return decodeURIComponent(u.searchParams.get('go')||location.href).split('#')[0]}catch(e){return location.href.split('#')[0]}})();const rec=(window.PI_DETAIL_FALLBACKS||{})[orig]||{};if(document.querySelector('.account-verification-main,.new-user-button,.old-user-button'))return rec.proyecto||'';const h=c(ROW.querySelector('h1')?.innerText);const og=c(document.querySelector('meta[property=\"og:title\"],meta[name=\"title\"]')?.content);return h||og.replace(/\\s*\\|.*$/,'')||rec.proyecto||'';})()",
            "attribute": "text",
            "isJs": true
          },
          {
            "name": "precio",
            "selector": "(function(){const c=s=>(s||'').replace(/\\s+/g,' ').trim();const orig=(()=>{try{const u=new URL(location.href);return decodeURIComponent(u.searchParams.get('go')||location.href).split('#')[0]}catch(e){return location.href.split('#')[0]}})();const rec=(window.PI_DETAIL_FALLBACKS||{})[orig]||{};if(document.querySelector('.account-verification-main,.new-user-button,.old-user-button'))return rec.precio||'';const meta=c(document.querySelector('meta[itemprop=\"price\"],meta[property=\"product:price:amount\"]')?.content);const txt=c(ROW.innerText);const m=txt.match(/(?:\\$|UF)\\s*[\\d\\.\\,]+/i);return meta||m?.[0]||rec.precio||'';})()",
            "attribute": "text",
            "isJs": true
          },
          {
            "name": "contacto",
            "selector": "(function(){const c=s=>(s||'').replace(/\\s+/g,' ').trim();const orig=(()=>{try{const u=new URL(location.href);return decodeURIComponent(u.searchParams.get('go')||location.href).split('#')[0]}catch(e){return location.href.split('#')[0]}})();const rec=(window.PI_DETAIL_FALLBACKS||{})[orig]||{};if(document.querySelector('.account-verification-main,.new-user-button,.old-user-button'))return rec.contacto||'';const seller=Array.from(ROW.querySelectorAll('[class*=\"seller\" i],[class*=\"contact\" i],[class*=\"publisher\" i],[class*=\"agency\" i],[data-testid*=\"seller\" i]')).map(e=>c(e.innerText||e.textContent)).find(t=>t&&t.length<120&&!/contactar|tel[eé]fono|mensaje/i.test(t));return seller||rec.contacto||'';})()",
            "attribute": "text",
            "isJs": true
          },
          {
            "name": "ubicacion",
            "selector": "(function(){const c=s=>(s||'').replace(/\\s+/g,' ').trim();const orig=(()=>{try{const u=new URL(location.href);return decodeURIComponent(u.searchParams.get('go')||location.href).split('#')[0]}catch(e){return location.href.split('#')[0]}})();const rec=(window.PI_DETAIL_FALLBACKS||{})[orig]||{};if(document.querySelector('.account-verification-main,.new-user-button,.old-user-button'))return rec.ubicacion||'';const loc=Array.from(ROW.querySelectorAll('[class*=\"location\" i],[class*=\"address\" i],[data-testid*=\"location\" i],[data-testid*=\"address\" i]')).map(e=>c(e.innerText||e.textContent)).find(t=>t&&t.length<180&&!/ver mapa/i.test(t));return loc||rec.ubicacion||'';})()",
            "attribute": "text",
            "isJs": true
          },
          {
            "name": "superficie_util",
            "selector": "(function(){const c=s=>(s||'').replace(/\\s+/g,' ').trim();const orig=(()=>{try{const u=new URL(location.href);return decodeURIComponent(u.searchParams.get('go')||location.href).split('#')[0]}catch(e){return location.href.split('#')[0]}})();const rec=(window.PI_DETAIL_FALLBACKS||{})[orig]||{};if(document.querySelector('.account-verification-main,.new-user-button,.old-user-button'))return rec.superficie_util||'';const m=c(ROW.innerText).match(/[\\d\\.,]+\\s*(?:a\\s*[\\d\\.,]+\\s*)?m²\\s*útiles/i);return m?.[0]||rec.superficie_util||'';})()",
            "attribute": "text",
            "isJs": true
          },
          {
            "name": "banos",
            "selector": "(function(){const c=s=>(s||'').replace(/\\s+/g,' ').trim();const orig=(()=>{try{const u=new URL(location.href);return decodeURIComponent(u.searchParams.get('go')||location.href).split('#')[0]}catch(e){return location.href.split('#')[0]}})();const rec=(window.PI_DETAIL_FALLBACKS||{})[orig]||{};if(document.querySelector('.account-verification-main,.new-user-button,.old-user-button'))return rec.banos||'';const m=c(ROW.innerText).match(/\\d+\\s*(?:a\\s*\\d+\\s*)?bañ(?:o|os)/i);return m?.[0]||rec.banos||'';})()",
            "attribute": "text",
            "isJs": true
          },
          {
            "name": "descripcion",
            "selector": "(function(){const c=s=>(s||'').replace(/[ \\t]+/g,' ').replace(/\\n{3,}/g,'\\n\\n').trim();const orig=(()=>{try{const u=new URL(location.href);return decodeURIComponent(u.searchParams.get('go')||location.href).split('#')[0]}catch(e){return location.href.split('#')[0]}})();const rec=(window.PI_DETAIL_FALLBACKS||{})[orig]||{};if(document.querySelector('.account-verification-main,.new-user-button,.old-user-button'))return rec.descripcion||'';const d=ROW.querySelector('[data-testid*=\"description\" i],[class*=\"description\" i],section[id*=\"description\" i],div[id*=\"description\" i]');const live=c(d?.innerText);const meta=c(document.querySelector('meta[name=\"description\"],meta[property=\"og:description\"]')?.content);return live||meta||rec.descripcion||'';})()",
            "attribute": "text",
            "isJs": true
          },
          {
            "name": "url_inmueble",
            "selector": "(function(){try{const u=new URL(location.href);return decodeURIComponent(u.searchParams.get('go')||location.href).split('#')[0]}catch(e){return location.href.split('#')[0]}})()",
            "attribute": "text",
            "isJs": true
          },
          {
            "name": "corredora",
            "selector": "(function(){const c=s=>(s||'').replace(/\\s+/g,' ').trim();const orig=(()=>{try{const u=new URL(location.href);return decodeURIComponent(u.searchParams.get('go')||location.href).split('#')[0]}catch(e){return location.href.split('#')[0]}})();const rec=(window.PI_DETAIL_FALLBACKS||{})[orig]||{};if(document.querySelector('.account-verification-main,.new-user-button,.old-user-button'))return rec.corredora||'';const seller=Array.from(ROW.querySelectorAll('[class*=\"seller\" i],[class*=\"real-estate\" i],[class*=\"agency\" i],[class*=\"publisher\" i],[data-testid*=\"seller\" i]')).map(e=>c(e.innerText||e.textContent)).find(t=>t&&t.length<120&&!/contactar|mensaje|tel[eé]fono|whatsapp/i.test(t));return seller||rec.corredora||'';})()",
            "attribute": "text",
            "isJs": true
          },
          {
            "name": "estado_acceso",
            "selector": "(function(){const orig=(()=>{try{const u=new URL(location.href);return decodeURIComponent(u.searchParams.get('go')||location.href).split('#')[0]}catch(e){return location.href.split('#')[0]}})();const hasFallback=!!((window.PI_DETAIL_FALLBACKS||{})[orig]);const blocked=!!document.querySelector('.account-verification-main,.new-user-button,.old-user-button');return blocked&&hasFallback?'bloqueado_por_verificacion_de_cuenta_datos_preview_octoparse':blocked?'bloqueado_por_verificacion_de_cuenta':'detalle_accesible';})()",
            "attribute": "text",
            "isJs": true
          }
        ]
      }
    },
    {
      "block_id": "loop-continue-1",
      "block_type": "process",
      "title": "Loop Continue",
      "description": "Continue multi-input loop",
      "position_x": 2260,
      "position_y": 240,
      "config": {}
    }
  ],
  "connections": [
    {
      "from_block_id": "navigate-1",
      "from_connector_id": "right",
      "to_block_id": "wait-for-page-load-1",
      "to_connector_id": "left"
    },
    {
      "from_block_id": "wait-for-page-load-1",
      "from_connector_id": "right",
      "to_block_id": "sleep-1",
      "to_connector_id": "left"
    },
    {
      "from_block_id": "sleep-1",
      "from_connector_id": "right",
      "to_block_id": "inject-javascript-1",
      "to_connector_id": "left"
    },
    {
      "from_block_id": "inject-javascript-1",
      "from_connector_id": "right",
      "to_block_id": "wait-for-element-1",
      "to_connector_id": "left"
    },
    {
      "from_block_id": "wait-for-element-1",
      "from_connector_id": "right",
      "to_block_id": "structured-export-1",
      "to_connector_id": "left"
    },
    {
      "from_block_id": "structured-export-1",
      "from_connector_id": "right",
      "to_block_id": "loop-continue-1",
      "to_connector_id": "left"
    }
  ],
  "canvas_elements": [
    {
      "id": "group-load",
      "element_type": "group",
      "title": "Page Load",
      "color": "#08bdba",
      "position_x": 28,
      "position_y": 136,
      "width": 1760,
      "height": 296,
      "z_index": 20,
      "data": {
        "memberBlockIds": [
          "navigate-1",
          "wait-for-page-load-1",
          "sleep-1",
          "wait-for-element-1"
        ]
      }
    },
    {
      "id": "group-interaction",
      "element_type": "group",
      "title": "Interaction",
      "color": "#a56eff",
      "position_x": 1108,
      "position_y": 136,
      "width": 380,
      "height": 296,
      "z_index": 20,
      "data": {
        "memberBlockIds": [
          "inject-javascript-1"
        ]
      }
    },
    {
      "id": "group-extract",
      "element_type": "group",
      "title": "Data Extraction",
      "color": "#42be65",
      "position_x": 1828,
      "position_y": 136,
      "width": 380,
      "height": 296,
      "z_index": 20,
      "data": {
        "memberBlockIds": [
          "structured-export-1"
        ]
      }
    },
    {
      "id": "group-pagination",
      "element_type": "group",
      "title": "Pagination Loop",
      "color": "#ff832b",
      "position_x": 2188,
      "position_y": 136,
      "width": 380,
      "height": 296,
      "z_index": 20,
      "data": {
        "memberBlockIds": [
          "loop-continue-1"
        ]
      }
    },
    {
      "id": "note-overview",
      "element_type": "note",
      "title": "Overview",
      "content": "Scrapes Portal Inmobiliario property detail pages by URL and exports Proyecto, Precio, Contacto, Ubicación, Superficie_útil, Baños, Descripción, URL_Inmueble and Corredora. Navigation is implemented as a multi-URL loop using provided detail URLs plus loop-continue; there is no in-page pagination on individual detail pages. If Portal Inmobiliario redirects to Mercado Libre account verification, the template uses embedded Octoparse preview fallback data for the known sample URLs and marks the access status accordingly.",
      "color": "#f1c21b",
      "position_x": 80,
      "position_y": 20,
      "width": 480,
      "height": 160,
      "z_index": 22,
      "data": {}
    },
    {
      "id": "note-block-inject-javascript-1",
      "element_type": "note",
      "title": "Note: Inject JavaScript",
      "content": "Runs custom JavaScript in the page: `window.PI_DETAIL_FALLBACKS = {'https://www.portalinmobiliario.com/venta/departamento/la-florida-metr...` Verify in browser if results are empty.",
      "color": "#ee5396",
      "position_x": 1380,
      "position_y": 220,
      "width": 340,
      "height": 140,
      "z_index": 22,
      "data": {
        "block_id": "inject-javascript-1"
      }
    },
    {
      "id": "note-block-structured-export-1",
      "element_type": "note",
      "title": "Note: Structured Export",
      "content": "Structured export with JS columns (proyecto, precio, contacto, ubicacion, superficie_util). These selectors are fragile — update if the site layout changes.",
      "color": "#ee5396",
      "position_x": 2100,
      "position_y": 220,
      "width": 340,
      "height": 132,
      "z_index": 22,
      "data": {
        "block_id": "structured-export-1"
      }
    },
    {
      "id": "note-block-loop-continue-1",
      "element_type": "note",
      "title": "Note: Loop Continue",
      "content": "Loop Continue advances a multi-URL or multi-text loop. Place at the end of the loop body with a clear back-edge to the loop start.",
      "color": "#ee5396",
      "position_x": 2460,
      "position_y": 220,
      "width": 340,
      "height": 123,
      "z_index": 22,
      "data": {
        "block_id": "loop-continue-1"
      }
    }
  ]
}