Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/9.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
Delphi使用WebBrowser/IdHttp从表单提交下载文件_Delphi_Twebbrowser_Idhttp - Fatal编程技术网

Delphi使用WebBrowser/IdHttp从表单提交下载文件

Delphi使用WebBrowser/IdHttp从表单提交下载文件,delphi,twebbrowser,idhttp,Delphi,Twebbrowser,Idhttp,我需要从网页下载一个文件。我尝试在Delphi中使用TWebBrowser和TIdHTTP,但没有成功 我找不到指向该文件的链接。当我单击HMTL按钮下载时,执行表单提交,并立即显示下载窗口。我尝试复制“下载”窗口中“文件详细信息”中显示的链接,但如果仅将其粘贴到浏览器中,该链接将无法工作 下载窗口中文件的链接: 下载按钮的代码: <input name="visualizarTodos" value="Visualizar processo em um único PDF de 61,

我需要从网页下载一个文件。我尝试在Delphi中使用
TWebBrowser
TIdHTTP
,但没有成功

我找不到指向该文件的链接。当我单击HMTL按钮下载时,执行表单提交,并立即显示下载窗口。我尝试复制“下载”窗口中“文件详细信息”中显示的链接,但如果仅将其粘贴到浏览器中,该链接将无法工作

下载窗口中文件的链接:

下载按钮的代码:

<input name="visualizarTodos" value="Visualizar processo em um único PDF de 61,49 MB" onclick="javascript:submete();" id="botaoVisualizarTodos" class="botao" title="Visualizar Todas as peças listadas abaixo em um único PDF. Tamanho estimado: 61,49 MB. (Alt + F10)" type="button">

在这种情况下,有没有办法下载该文件?

能否提供提供此下载按钮的HTML页面的URL?它是否可以公开访问,或者您必须登录才能访问它?完整的HTML
是什么样子的?在浏览器地址栏中粘贴下载链接不起作用,因为服务器希望通过
POST
请求而不是
GET
请求来请求URL。根据
enctype
属性的值,您可以在
TIdHTTP
中使用其
Post()
方法和
TStrings
TIdMultipartFormDataStream
对象来模拟HTML表单提交。使用chrome开发工具或类似工具进行调试。跟踪请求。@RemyLebeau它需要登录名和密码。HTML页面的URL是,表单HTML是
,这不是完整的
。它有哪些元素?您必须
POST
所有非空
值(使用
TStrings
对象,因为省略了
enctype
)。此外,由于涉及登录,Cookie很可能被用来跟踪登录状态。因此,请确保您先
Get()
HTML页面以获取所需的Cookie,然后再
Post()
'ing页面的表单数据。正如David所说,使用浏览器的内置开发工具查看文件是如何被请求的。然后您需要这样的内容:
Stream:=TFileStream.Create('localfilename',fmCreate);Params:=TStringList.Create;参数Add('anoProcInt=2013');参数Add('numProcInt=1282');参数Add('origem=consultarProcesso');Add('processoliberadoparaedicaousario=…');参数Add('liberadaalteracoordenacao=…');IdHttp.Post('https://aplicacao3.tst.jus.br/visualizacaoAutos/VisualizarPecas.pub?visualizarTodos=1,参数,流);自由参数;免费