我正在使用C#WebClient将登录详细信息发布到页面并阅读所有结果。
我尝试加载的页面包括flash(在浏览器中,它转换为HTML)。我猜它是闪存避免被搜索引擎捡起来???
我感兴趣的flash只是文本(不是图像/视频)等,当我在firefox中“查看选择源”时,我确实在HTML中看到了我想看到的文本。
(有趣的是,当我查看整个页面的来源时,我看不到HTML中的文本,我想看到。这可能是相关的吗?)
目前,在我发布了我的登录详细信息并将HTML加载回来之后,我看到的页面没有显示Flash HTML(就像我查看了整个页面的源代码一样)。
提前致谢,
吉姆
PS:我应该指出POST实际上正在运行,我的登录成功。
答案 0 :(得分:9)
Fiddler(或类似工具)非常有助于追踪像这样的屏幕抓取问题。使用普通浏览器并使用fiddler激活,查看在您完成登录和导航过程时所做的所有请求,以获取所需的数据。在这两者之间,您可能会看到一个或多个事物,您的代码正在以不同的方式执行服务器响应,因此显示的HTML与实际客户端不同。
下面的内容列表(将其视为“抓101”)是您想要寻找的。下面的大多数东西可能是你已经在做的东西,但我把所有内容都包括在内。
为了有效地抓取,您可能需要处理以下一项或多项:
答案 1 :(得分:0)
(有趣的是,当我查看整个页面的来源时,我看不到HTML中的文本,我想看到。这可能是相关的吗?)
这通常意味着差异是由页面加载后通过javascript进行的一些DOM操作引起的。尝试关闭javascript并查看它的外观。