Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html wget未完全处理http调用_Html_Wget_Radiobuttonlist - Fatal编程技术网

Html wget未完全处理http调用

Html wget未完全处理http调用,html,wget,radiobuttonlist,Html,Wget,Radiobuttonlist,这里是一个wget命令,它执行由第三方托管的HTML/PHP堆栈报告套件——我们无法控制PHP或HTML页面 wget--无检查证书--http user=/myacc--http password=mypass-O/tmp/myoutput.csv”https://myserver.mydomain.com/mymodule.php?myrepcode=9999&action=exportcsv&admin=myappuserid&password=myappuserpass&startdat

这里是一个wget命令,它执行由第三方托管的HTML/PHP堆栈报告套件——我们无法控制PHP或HTML页面

wget--无检查证书--http user=/myacc--http password=mypass-O/tmp/myoutput.csv”https://myserver.mydomain.com/mymodule.php?myrepcode=9999&action=exportcsv&admin=myappuserid&password=myappuserpass&startdate=2011-01-16&enddate=2011-01-16&reportby=mypreferredview“

所有元件都工作正常:

--http user/--http pass,由浏览器提供用户名和密码提示的标准弹出窗口 -O/tmp/myoutput.csv-感兴趣的输出文件

"

由参数动态生成的文件

myrepcode=9999-对相关报告的引用 action=exportcsv内部写入函数 admin=myappuserid第三方通过SSL访问站点-然后通过存储在数据库中的内部用户名和密码访问站点的功能) 密码=myappuserpass startdate=2011-01-16此数据和结束数据是报告9999的特定参数 结束日期=2011-01-16 reportby=mypreferredview这是报告中的一个选项,有助于实现不同级别的详细信息或聚合

问题是reportby参数是5个选项列表中的一个单选按钮选择(当然,我知道默认值是最高级别的聚合,我想要最后一个最详细的)

下面是reportby选项的HTML页面代码示例

HTML中的标记没有被列入白名单,因此如果需要,我将发送示例

<td>View by</td>
<td>
   <input class="naf-radio" name="reportby" id="reportby[thedefault]" value="thedefault" type="radio">The Default                    
   <input class="naf-radio" name="reportby" id="reportby[myleastpreferred]" value="myleastpreferred" type="radio">My Least Preferred
   <input class="naf-radio" name="reportby" id="reportby[mysecondleastpreferred]" value="mysecondleastpreferred" type="radio">My Second Least Preferred
   <input class="naf-radio" name="reportby" id="reportby[mythirdleastpreferred]" value="mythirdleastpreferred" type="radio">My Third Least Preferred
   <input class="naf-radio" name="reportby" id="reportby[mypreferred]" value="mypreferred" type="radio">My Preferred
</td>
查看方式
默认值
我最不喜欢的
我的第二个最不喜欢的
我的第三个最不喜欢的
我的首选
无论我在wget语句中选择了哪一个reportby项,默认值始终被执行

问题

1) 有没有人在HTML中遇到过这种符号(id=inputname[inputelement]) 我和一位高级web开发人员谈过,他从未见过这种输入符号(id=inputname[inputelement])——基于广泛的搜索,W3学校似乎也不熟悉这种符号

2) wget命令在执行命令时是否可以选择无默认无线电项目

这可能会在最初收到一个“Use CURL”响应—但是wget方法在我操作的有限环境中工作得非常好—特别是当我需要下载10000个这样的项目时


感谢提前回复

单选按钮只是另一个表单元素,通常可以通过查询字符串传递。一些应用程序会要求将参数作为POST数据传递,但这在我的经验中并不常见

您需要做的是找到单选按钮的名称和所需选项上的值。然后,您只需将
&name=value
添加到当前url,它的行为应该与选择该单选按钮类似

表示法
id=inputname[inputelement]
可以存在于javascript或类似语言中,但不能存在于HTML中。在HTML中,其名称=URL中声明的值类型(以及属性和其他内容)。在本例中,我假设该字符串是在生成HTML的任何代码中解释的,而不是呈现到屏幕上

此外,您还需要确保对url中输入的任何值进行url编码,以确保它们不包含任何非法字符(例如&或=将完全混淆)

如果querystring方法不起作用,那么wget有一个
--post data
开关,允许您指定要发布的数据,这是表单的作用。如果您使用
--post data=reportby=mypreferred
,我希望您在这方面取得更大的成功


如果这仍然失败,那么我会使用一些工具来查看您的wget请求以及通过浏览器查看您的请求,并比较标题和数据,看看它们有什么不同。其中一个工具就是fiddler(http://www.fiddler2.com/fiddler2/)尽管我相信还有很多其他人。

谢谢克里斯的建议-但我认为这有点奇怪…关于“。。。然后,您只需将&name=value添加到当前url,它的行为应该类似于选择该下拉选项。“这正是我们所做的,但正如前面提到的,它忽略了调用&reportby=mypreferredview…这些标记元素位于HTML td标记集中-因此这与not in JAVA语句冲突-您的输入是值得赞赏的更正:not in JAVA语句应该已经读取-可能存在于javascript中,但不存在于HTML中。-如前所述,HTML标记td contain id=inputname[inputelement]子句我刚刚在您的问题中找到了HTML(您需要使用代码格式将其标记为代码,否则它会将其视为HTML,而不是您想要显示的内容)您应该能够在url的末尾添加
&reportby=mypreferred
。在计算提交的表单数据时,没有使用id,只使用名称和值。我猜这个id语法是一个错误,应该在将其呈现为HTML之前解释为id。我猜现在服务器sn不允许在url中指定,只允许在post数据中指定。您可以尝试--post data=reportby=mypreferred,看看它是否更喜欢(也会用这个更新我的答案)。Chris---postdata=-完美!非常感谢-让我走出了一个巨大的洞