Panacea.NL als je geinteresserd bent in IT en Geneeskunde!
Je zou natuurlijk de string met server.htmlencode kunnen omzetten, maar vraag is in hoeverre dat wenselijk is.
dat is inderdaad niet de bedoeling, ik weet wel dat server.htmlencode ook moeite heeft met extended characters (http://support.microsoft.com/support/kb/articles/Q184/8/91.ASP), maar heb nix kunnen vinden met betrekking tot XMLHTTP objecten
Panacea.NL als je geinteresserd bent in IT en Geneeskunde!
Ik neem aan dat ie elk speciaal karakter naar ':?' omzet, dus ik denk dat dat niet kan.Op maandag 12 november 2001 10:04 schreef Jackor het volgende:
kan je ze zelf niet Replacen ?
Replace(strIng, "?:", "e")
of zoiets
wat nog veel vager is dat ie het vraagteken niet vindt, noch met Instr, noch met Replace. En hij zal inderdaad andere special characters ook als ? of ?: laten zien. Waarschijnlijk heeft er mee te maken dat de makers van de site ë (rechtstreeks) gebruiken ipv ët; . Volgens de HTML conventies mag dit niet, en het geeft dus blijkbaar soms problemen. Ik vraag me dus af of er niet een workaround/hack is zodat ie de data wel correct leest.
Panacea.NL als je geinteresserd bent in IT en Geneeskunde!
Verwijderd
Dit heeft te maken met encoding (kijk maar eens in IE bij View->Encoding.
De meeste web-pagina's zie je in Western European (windows of latin-1 [ook wel ISO-8859-1]). Maar je hebt ook unicode, vaak wordt hiervoor UTF-8 gebruikt. Jou probleem lijkt hier vandaan te komen.
Latin 1 heeft voor de ë maar 1 byte nodig UTF-8 heeft hier 3 bytes voor nodig. Maar Latin-1 kan dan ook maar minder dan 200 tekens coderen, terwijl UTF-8 miljoenen kan (alle tekens van de wereld).
Practisch: kijk eens naar deze tread in programming. Probeer ook eens één van de volgende twee regels boven in je xml
De meeste web-pagina's zie je in Western European (windows of latin-1 [ook wel ISO-8859-1]). Maar je hebt ook unicode, vaak wordt hiervoor UTF-8 gebruikt. Jou probleem lijkt hier vandaan te komen.
Latin 1 heeft voor de ë maar 1 byte nodig UTF-8 heeft hier 3 bytes voor nodig. Maar Latin-1 kan dan ook maar minder dan 200 tekens coderen, terwijl UTF-8 miljoenen kan (alle tekens van de wereld).
Practisch: kijk eens naar deze tread in programming. Probeer ook eens één van de volgende twee regels boven in je xml
code:
1
2
| <?xml version="1.0" encoding="iso-8859-1"?> <?xml version="1.0" encoding="utf-8"?> |
ik weet dat het iets met encoding te maken heeft, maar ik heb nog geen codepage kunnen vinden die de gewenste resultaten gaf in ASP. Daarnaast rip ik een site die ik zelf niet gemaakt heb en heb ik dus geen invloed op de daar aanwezige data.
Het is gwoon jammer dat de makers van de site waar ik rip niet ët; hebben gebruikt ipv ë want dan had ik geen enkel probleem gehad....
Het is gwoon jammer dat de makers van de site waar ik rip niet ët; hebben gebruikt ipv ë want dan had ik geen enkel probleem gehad....
Panacea.NL als je geinteresserd bent in IT en Geneeskunde!
Verwijderd
Dus kun je twee dingen doen:
1. de ë omzetten naar ë
2. zelf ook op de ë manier gaan werken.
Voor optie 1 verwijs ik je deze tread.
Ik rip ook websites (eigenlijk html uit emailtjes). Dit verwerk ik naar een xml-textfile en dat gaat goed (in de mailtjes staat ook gewoon ë en á).
Als je nu even verteld welke stappen het rippen neemt, dan heb ik misschien een tip voor je.
1. de ë omzetten naar ë
2. zelf ook op de ë manier gaan werken.
Voor optie 1 verwijs ik je deze tread.
Ik rip ook websites (eigenlijk html uit emailtjes). Dit verwerk ik naar een xml-textfile en dat gaat goed (in de mailtjes staat ook gewoon ë en á).
Als je nu even verteld welke stappen het rippen neemt, dan heb ik misschien een tip voor je.
ik maak een XMLHTTP object
en gebruik dan .open "GET", url enz...
en dan ripstr = .ResponseText
ripstr bevat dan al corrupte characters
als meeltjes wel goed geript kunnen worden moet dat idd met webpagina's ook wel kunnen lukken
en gebruik dan .open "GET", url enz...
en dan ripstr = .ResponseText
ripstr bevat dan al corrupte characters
als meeltjes wel goed geript kunnen worden moet dat idd met webpagina's ook wel kunnen lukken
Panacea.NL als je geinteresserd bent in IT en Geneeskunde!
Verwijderd
Ik heb even naar de documentatie gekeken. Het MSXML component is Unicode gebaseerd. Helaas is internet meer iso-8859-1 (Latin-1) gebaseerd. Jou probleem: MSXML zet de codering niet goed om.
Maw: je kunt beter een ander component zoeken. Met het Winsock-control kun je makkelijk zelf een HTTP-get componentje bouwen. Ik ken geen "gratis" componenten...
Maw: je kunt beter een ander component zoeken. Met het Winsock-control kun je makkelijk zelf een HTTP-get componentje bouwen. Ik ken geen "gratis" componenten...
Beetje laat, maar ik was ook naar een oplossing op zoek voor dit probleem, en die heb ik gevonden.
Set objHTTP = CreateObject("WinHttp.WinHttpRequest.5")
objHTTP.Open "GET", strUrl, False
objHTTP.Send
strTemp = objHTTP.ResponseText
Set objHTTP = Nothing
Set objHTTP = CreateObject("WinHttp.WinHttpRequest.5")
objHTTP.Open "GET", strUrl, False
objHTTP.Send
strTemp = objHTTP.ResponseText
Set objHTTP = Nothing
weinig tot niks..
Pagina: 1