如何以编程方式访问Web表单?

时间:2011-06-30 23:53:05

标签: html forms

http://countrysize.com/有两个下拉菜单,可以选择国家/地区名称。

我正在尝试制作一个bash程序,以自动截取任何给定两个国家/地区的结果屏幕截图。即我不想在浏览器中手动选择两个国家/地区,然后截取屏幕截图。目标是获得完整的国家区域比较结果。

我如何以编程方式执行此操作?

2 个答案:

答案 0 :(得分:1)

如果页面上的表单使用method = get,并且在URL中传递查询参数,则每个对都会有一个URL。但是,如果是这种情况,您将在浏览器中看到生成的URL。

如果表单使用method = post,则选项将作为表单提交的一部分发送,并包含在Web请求的正文中。您可以从bash脚本调用命令行工具,该脚本将发送此类型的表单提交。工具“curl”和“wget”都可以做到这一点。

然而,这个页面看起来像是在发生其他事情。该页面需要javascript,而实际工作的代码可能是javascript。通常情况下,这意味着您无法使用命令行脚本轻松编写脚本。

但是......页面上有一些链接用于某些比较:

http://countrysize.com/?cou1=pk&cou2=sp     = Kenya : France
http://countrysize.com/?cou1=xxsct&cou2=be  = Scotland : Belgium
http://countrysize.com/?cou1=gl&cou2=br     = Greenland : Brazil
http://countrysize.com/?cou1=iz&cou2=is     = Iraq : Israel
http://countrysize.com/?cou1=ei&cou2=xxsct  = Ireland: Scotland

如果您可以确定每个国家/地区的代码,您可以使用这些网址。

答案 1 :(得分:0)

您不必使用复选框;只需按url并替换参数: http://countrysize.com/?cou1=pk&cou2=es

在这个例子中,它是pk = pakistan和es = el salvador

Google可以为您找到所有有效国家/地区代码的完整列表。现在你只需要截取屏幕截图。