对 Web 表单进行逆向工程

发布于 2024-07-08 22:02:55 字数 481 浏览 5 评论 0原文

我有一个网站,我从中下载 2-3 MB 的原始数据,然后将其输入 ETL 流程,将其加载到我的数据集市中。 不幸的是,数据提供者是美国农业部 (USDA),他们不允许通过 FTP 下载。 他们要求我使用网络表单来选择我想要的元素,点击 2-3 个屏幕,最后点击下载文件。 我想自动化这个下载过程。 我不是网络开发人员,但不知何故,我似乎应该能够使用某种工具来准确地告诉我从最终请求到服务器的 put/get/magic 的内容。 如果我有一个工具说,“将这些参数传递到这个 url 并等待响应”,那么我就可以在 Perl 中将一些东西组合在一起来自动化这个过程。

我意识到,如果我解构他们的所有 5 个页面并通读 JavaScript 包含内容并点击我的治疗 3 次,我就可以从我有权访问的内容中获取此信息。 但我想要一个更快、更直接的路径,不需要我手动解析他们所有的 JS。

重述最后一个问题:是否有一种工具或方法可以清楚地显示从 Web 表单发送的最终请求是什么以及它的结构如何?

I have a web site which I download 2-3 MB of raw data from that then feeds into an ETL process to load it into my data mart. Unfortunately the data provider is the US Dept. of Ag (USDA) and they do not allow downloading via FTP. They require that I use a web form to select the elements I want, click through 2-3 screens and eventually click to download the file. I'd like to automate this download process. I am not a web developer but somehow it seems that I should be able to use some tool to tell me exactly what put/get/magic goes from the final request to the server. If I had a tool that said, "pass these parameters to this url and wait for a response" I could then hack something together in Perl to automate this process.

I realize that if I deconstructed all 5 of their pages and read through the JavaScript includes and tapped my heals together 3 times I could get this info from what I have access to. But I want a faster and more direct path that does not require me to manually parse all their JS.

Restatement of the final question: Is there a tool or method that will show clearly what the final request request sent from a web form was and how it was structured?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

酒废 2024-07-15 22:02:56

篡改者最好的朋友(这些是 Firefox 扩展,您也可以使用 Wireshark 之类的东西)

HTTPFox

篡改数据

祝你好运

A tamperer's best friends (these are firefox extensions, you could also use something like Wireshark)

HTTPFox

Tamper Data

Best of luck

爱给你人给你 2024-07-15 22:02:56

使用 Fiddler2 作为代理来查看来回传递的内容。 我在其他类似情况下成功做到了这一点

主页在这里: http://www.fiddler2.com /fiddler2/

Use Fiddler2 as a proxy to see what is being passed back and forth. I've done this with success in other similar circumstances

Home page is here: http://www.fiddler2.com/fiddler2/

偷得浮生 2024-07-15 22:02:56

与其他回复一样,除了我选择的工具是 Charles

As with the other responses, except my tool of choice is Charles

蓬勃野心 2024-07-15 22:02:56

使用 Web 测试工具包怎么样,例如 Watir 和 Ruby ?

很容易填写表格..只需使用输出..

What about using a web testing toolkit, like Watir and Ruby ?

Easy to fill in the forms.. just use the output..

爺獨霸怡葒院 2024-07-15 22:02:56

使用WatiN并将其与WatiN TestRecorder(Google for it)结合起来

它可以“模拟”坐在前面的用户浏览器输入您可以从自己的 C# 代码提供的值...

Use WatiN and combine it with WatiN TestRecorder (Google for it)

It can "simulate" a user sitting in front of the browser punching in values which you can supply from your own C# code...

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文