了解特定网页的HTML代码

时间:2013-06-09 08:57:17

标签: html html-parsing

我正在尝试查看以下网址的代码 - http://www.chilis.com/EN/Pages/menuitem.aspx

我在网页上看到一些我无法理解的奇怪内容。我希望有人可以向我解释。

  1. 我在浏览器中看到的实际菜单项无法在源代码中找到。该页面看起来不像使用任何ajax样式调用。

  2. 那里有一块base64 blob。我解码了它,它仍然导致base64编码的字节。不知道那是什么,为什么它甚至在源页面中。

  3. 感谢您的帮助。

    P

2 个答案:

答案 0 :(得分:2)

如果您使用Firebug或类似设备并查看网络面板并仔细观察下载的文件,您将看到一个名为Navigator.txt的文件被提取,其中包含左侧菜单(Appetizersn& Flatbreads等)in JSON格式。

执行此操作并确定网站的哪个部分实际上正在加载此Navigator.txt应该会提示您如何正确构建菜单。

答案 1 :(得分:1)

通过ajax

加载菜单内容

正如CodeTwice所指出的,the file Navigator.txt正在通过ajax(xhr)加载来获取数据。

Network tab filtered for XHR calls

如果在chrome devtools中为Navigator.txt的URL添加断点,您可以看到哪个javascript文件以及哪个方法可以加载菜单数据。

Add xhr breakpoint for url

see debugger pausing at breakpoint

如果您使用chrome devtools,则更容易分析源代码:

Base64你的意思是Viewstate吗?

滚动浏览源代码我只能找到看起来像base64编码字符串的viewstate。你能澄清你的意思吗?

您的问题已得到解答吗?

paraphrase您的问题:

  • 菜单项不在源代码中。页面是否通过ajax加载它们?是的确如此。
  • 代码中的base64 blob是什么?如果你谈论viewstate这是ASP.NET网页使用的技术,可以跨回发持续更改Web表单的状态。如果您google viewstate,您可以找到许多描述它的文章。

这是否回答了您的问题?如果情况并非如此,请随时在您的问题中添加更多详细信息。