0

我有一个要求,我必须从网页自动下载文件。有一个下载按钮并将其重定向到 url。我可以使用代码动态单击该按钮吗?该网址有一个名为 sid 的字段,我可以使用 firebug 查看 sid 值,但相同的 sid 在页面源中不可见。如何自动下载文件。

4

2 回答 2

1

如果 sid 字段在 firebug 中可见,但在源代码中不存在,则很可能稍后通过 javascript 添加 sid。在这种情况下,简单地拉取 Web 源代码不会有太大帮助。您需要一个能够运行可能需要的 javascript 代码的无头浏览器。

我假设你正在使用 C# 编写你的爬虫,不幸的是,没有那么多用于 .NET 的无头浏览器,我认为如果你使用 node.js 之类的东西,你的工作可能会更容易(我猜,我从来没有实际上在节点中做了任何报废),但这一个关于.NET的一些无头浏览器的问题。

于 2012-09-10T12:19:30.373 回答
0

当 Firebug 打开时,去下载一个合法的文件。然后,在 Firebug 中,检查单击下载按钮后重定向到的位置。还要检查标题/cookie。然后,模拟您的浏览器在您的程序中所做的任何事情。如果您了解 HTTP 的一般工作原理,则可以做到(并且相对容易)。如果您不了解 HTTP 的工作原理(不会花很长时间)。根据经验,在代码中模仿您正在做的事情(使用浏览器)。如果没有验证码,它不会花很长时间。

于 2012-09-10T11:58:08.520 回答