472,145 Members | 1,530 Online
Bytes | Software Development & Data Engineering Community
Post +

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 472,145 software developers and data experts.

Reading XML Webpage Without XSLT

i'm trying to programatically read the xml that is used to create a
webpage through xslt transformations.

I can view the XML when i go to "View Source" in internet explorer,
but whenever i try to download the webpage programmatically i can't
ever get the source XML, i always get the transformed html.

Any ideas? I've tried everything i can think of :(

Mar 5 '07 #1
7 5643
dakrin wrote:
i'm trying to programatically read the xml that is used to create a
webpage through xslt transformations.

I can view the XML when i go to "View Source" in internet explorer,
but whenever i try to download the webpage programmatically i can't
ever get the source XML, i always get the transformed html.

Any ideas? I've tried everything i can think of :(
wget or dog does it for me.

///Peter
Mar 5 '07 #2
On Mar 5, 5:01 pm, Peter Flynn <peter.n...@m.silmaril.iewrote:
>
wget or dog does it for me.

///Peter

Well, I'm trying to finding a way to programatically do it using c#.
I've tried using xmlDocument.load(), getresponsestream(),
xmlreader.create(), etc. but they all get the html-output, not the
original xml file.

I downloaded wget for windows just to try it out and it downloaded the
html as well.

The only way I can view the xml is when i go to "View Source" in IE.

Any ideas?

Mar 6 '07 #3
dakrin wrote:
Well, I'm trying to finding a way to programatically do it using c#.
I've tried using xmlDocument.load(), getresponsestream(),
xmlreader.create(), etc. but they all get the html-output, not the
original xml file.

I downloaded wget for windows just to try it out and it downloaded the
html as well.

The only way I can view the xml is when i go to "View Source" in IE.
Please post an example URL you are trying to access, if the server sends
HTML after doing an XSLT transformation on the server then it is usually
not possible to access the XML, unless the server exposes that as well.
And if you really get HTML back then XML tools like the Load method of
XmlDocument or XmlReader will simply abort parsing and tell you the
markup is not well-formed XML.

--

Martin Honnen --- MVP XML
http://JavaScript.FAQTs.com/
Mar 6 '07 #4
Please post an example URL you are trying to access, if the server sends
HTML after doing an XSLT transformation on the server then it is usually
not possible to access the XML, unless the server exposes that as well.
And if you really get HTML back then XML tools like the Load method of
XmlDocument or XmlReader will simply abort parsing and tell you the
markup is not well-formed XML.

--

Martin Honnen --- MVP XML
http://JavaScript.FAQTs.com/
When I do "View Source" in Internet Explorer the XML shows up, so I'm
assuming that means its applying the xsl client side.

Here's an example site that does what i'm talking about:

http://armory.worldofwarcraft.com/ar...1&sf=rank&sd=a

Mar 6 '07 #5
dakrin wrote:
When I do "View Source" in Internet Explorer the XML shows up, so I'm
assuming that means its applying the xsl client side.

Here's an example site that does what i'm talking about:

http://armory.worldofwarcraft.com/ar...1&sf=rank&sd=a
The might sniff the user agent server side and depending on that serve
XML or HTML, try it like this

HttpWebRequest httpRequest =
(HttpWebRequest)WebRequest.Create(@"http://armory.worldofwarcraft.com/arena-ladder.xml?b=Stormstrike&ts=3&p=1&sf=rank&sd=a");
httpRequest.UserAgent =
@"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)";
HttpWebResponse httpResponse =
(HttpWebResponse)httpRequest.GetResponse();
XmlDocument xmlDocument = new XmlDocument();
xmlDocument.Load(httpResponse.GetResponseStream()) ;
httpResponse.Close();
xmlDocument.Save(Console.Out);

that way I get XML starting with

<?xml-stylesheet type="text/xsl" href="/layout/arena-ladder.xsl"?>
<page globalSearch="1" lang="en_us" requestUrl="/arena-ladder.xml">

It might also be necessary or helpful to set the Accept HTTP request
header but that depends on what they are doing on the server, it is not
really an XML problem but rather a HTTP problem.

--

Martin Honnen --- MVP XML
http://JavaScript.FAQTs.com/
Mar 6 '07 #6
dakrin wrote:
On Mar 5, 5:01 pm, Peter Flynn <peter.n...@m.silmaril.iewrote:
>wget or dog does it for me.

///Peter


Well, I'm trying to finding a way to programatically do it using c#.
I've tried using xmlDocument.load(), getresponsestream(),
xmlreader.create(), etc. but they all get the html-output, not the
original xml file.

I downloaded wget for windows just to try it out and it downloaded the
html as well.
In that case the transformation must be being done server-side.
AFAIK wget does not contain an XSLT processor.
The only way I can view the xml is when i go to "View Source" in IE.
What's the URI?

///Peter
Mar 6 '07 #7
Martin Honnen wrote:
The might sniff the user agent server side and depending on that server
XML or HTML, try it like this
Yep, that worked. Thanks very much :)

Mar 7 '07 #8

This discussion thread is closed

Replies have been disabled for this discussion.

Similar topics

1 post views Thread by Brett | last post: by
1 post views Thread by Miles Cousens II | last post: by
3 posts views Thread by GraVity via DotNetMonster.com | last post: by
5 posts views Thread by cybernerdsx2 | last post: by
11 posts views Thread by J_Zanetti | last post: by
reply views Thread by leo001 | last post: by

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.