login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Haal content uit een Iframe

Offline nonkeldw - 05/03/2014 18:49
Avatar van nonkeldwNieuw lid Beste forumleden,

Ik ben al lang aan het worstelen met het volgende probleem:
Ik heb een locaal draaiende pagina (.html) waar ik een Iframe in heb zitten deze een externe pagina opent bv:www.google.com. Nu is het mogelijk de inhoud hiermee bedoel ik de HTML van deze pagina te gaan stockeren in een variable zodanig dat ik daarna op kan gaan zoeken op de invulling van DIV's en dergelijke.

Ik heb zelf aan het aan het proberen geweest met Jquery, maar tot nu toe zonder succes.
  1. function get_content(){
  2. var editArea = document.getElementById('website');
  3. alert(editArea);
  4. $("p").text($("#website").contents());
  5. }


Mijn Iframe heeft als ID website. Na het uitvoeren van de functie get_content() geeft Firefox volgende error:

Permission denied to access property 'document'

Welke workaround bestaat hiervoor?

Alvast bedankt

3 antwoorden

Gesponsorde links
Offline Thomas - 05/03/2014 19:30
Avatar van Thomas Moderator Hm, wellicht via AJAX de pagina binnenhalen (GET request)?

Het hangt af van de pagina die je binnen wilt halen, want die kan op zijn beurt ook weer allerlei AJAX / IFrames gebruiken.

Om welke pagina('s) gaat het precies?

En als het om Google-services (search, maps, ...) gaat heb je andere manieren om hier mee te communiceren: Google API's.

Ik denk niet dat er een "universele" manier is om pagina's binnen te halen, dus als je een aantal voorbeelden kunt geven zou dit kunnen helpen bij het oplossen van je vraagstuk.

Daarnaast bieden moderne sites vaak alternatieve manieren aan om (gestructureerd) content te serveren: hetzij via RSS, of publieke / prive webservices.

Probeer jij content te "rippen" van andere websites (webscraping - dit hoeft niet per se illegaal te zijn, maar of het verstandig is is een tweede), of wat probeer je te bereiken?
Offline nonkeldw - 05/03/2014 19:34
Avatar van nonkeldw Nieuw lid Het zou gaan om de website Farnell.
Hier zou ik graag de prijs en de artikelnummer willen uithalen.
Het moet nog wel mogelijk zijn om gewoon te surfen met de Farnell website.
Offline Thomas - 05/03/2014 19:59
Avatar van Thomas Moderator Als ik de productpagina mag geloven heeft deze site ~776.801 producten, verdeeld over ((sub)sub)categorieën. De resultaatpagina's hebben op hun beurt weer (product/categorie specifieke) filters en (en product/categorie specifieke) eigenschappen en de resultaten lijken met AJAX geladen te worden...

Scraping van deze site lijkt mij nogal een onderneming... Er wordt wel gesproken over integratie van inkoopdiensten, maar als je de informatie wilt gaan gebruiken voor een soort van prijsvergelijking kun je beter werken met een soort van webservice (als ze die al hebben, kon deze zo gauw niet vinden, en als ze die al hebben wil dat niet zeggen dat je er zomaar gebruik van kunt maken). Als je die site gaat bestoken met requests om al die data binnen te slurpen sta je waarschijnlijk binnen een mum van tijd op een blacklist.

Daarnaast: waar sla je de binnengehaalde informatie op? Nergens? Wil je elke keer opnieuw de productinformatie van 776.801 producten inlezen?

Mijn eerste ingeving: neem contact met ze op om te informeren naar de mogelijkheden, scraping lijkt mij niet de weg gezien de omvang/complexiteit van het assortiment...
Gesponsorde links
Je moet ingelogd zijn om een reactie te kunnen posten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.3s