Ik heb een HTML-string en wil daar alle javascript uit halen. Dus in feite de script tags en alles wat daar tussen zit. Ik programmeer het in Ruby, maar vraag me af of daar het probleem zit. Mijn gevoel zegt dat het in de regexp zit.
Ik heb het even getest met wat random shit en dat werkt:
Maar de echte HTML wil niet lukken....
Hieronder een gedeelte van de HTML (hele pagina posten zal niet gewaardeerd worden)
Sorry voor de nogal 'troeperige string'
Als ik doe 's.gsub(/<script(.*?)<\/script>/, "")' krijg ik alle HTML terug inclusief script-tags
Ik heb het even getest met wat random shit en dat werkt:
code:
1
2
| s1 = "<script text=>aa</script>adf<script text=>dg<\/script>" s1.gsub(/<script(.*?)<\/script>/, "") # "adf" |
Maar de echte HTML wil niet lukken....
Hieronder een gedeelte van de HTML (hele pagina posten zal niet gewaardeerd worden)

Sorry voor de nogal 'troeperige string'
code:
1
| s = "<script type=\"text/javascript\">\n // Google Adsense for Search Javascript API\n var google_afs_request_done_executed = false;\n\n google_afs_query = 'nike Kleding | Heren';\n google_afs_ad = 'w0n8'; // specify the number of ads you are requesting\n google_afs_adpage = '1'; // page number\n google_afs_client = 'marktplaats'; // substitute your client ID\n google_afs_channel = 'marktplaats,View_list,L1,1776,t5,t8,n921,h822,x603'; // enter your comma-separated channel IDs\n google_afs_ie = 'ISO-8859-1'; // select input encoding scheme\n google_afs_oe = 'ISO-8859-1'; // select output encoding scheme\n google_afs_adsafe = 'high'; // specify level for filtering non-family-safe ads\n google_afs_adtest = 'off'; // set parameter to off before launch to production\n google_afs_hl = 'nl'; // enter your interface language if not English\n google_afs_gl = 'NL'; // Country\n\n function google_afs_request_done(google_ads) {\n \n if (google_ads.length <= 0) {\n return;\n }\n google_afs_request_done_executed = true;\n google_ad_request_done(google_ads);\n }\n </script>\n <script type=\"text/javascript\" src=\"http://www.google.com/afsonline/show_afs_ads.js\">\n </script>\n <script type=\"text/javascript\">\n if ( !google_afs_request_done_executed ) {\n // No data; Fall back to AFC script\n google_ad_client = 'ca-marktplaats_xml';\n google_ad_channel = 'marktplaats,View_list,L1,1776,t5,t8,n921,h822,x603,afs_fallback';\n google_ad_output = 'js';\n google_max_num_ads = '8';\n google_language = 'nl';\n google_safe = 'high';\n google_adtest = 'off';\n }\n </script>\n <script type=\"text/javascript\" src=\"http://pagead2.googlesyndication.com/pagead/show_ads.js\"></script>\n \n \n \n </body>\n</html>\n" |
Als ik doe 's.gsub(/<script(.*?)<\/script>/, "")' krijg ik alle HTML terug inclusief script-tags
edit:
Ik heb dit geprobeerd, dat werkt wel, maar is voor dfe rest van mijn pagina weer juist TE rigureus: http://house9.blogspot.co...o-remove-script-tags.html
Dit gooit er ook veel HTML uit naast alleen maar de script-tags
Ik heb dit geprobeerd, dat werkt wel, maar is voor dfe rest van mijn pagina weer juist TE rigureus: http://house9.blogspot.co...o-remove-script-tags.html
Dit gooit er ook veel HTML uit naast alleen maar de script-tags
[Voor 3% gewijzigd door van.der.schulting op 07-06-2011 15:12]