Php 使用curl上传文件,遵循重定向并下载后续网页
如果我所要求的是显而易见的,或者已经在其他地方得到了回答,请提前道歉。我试着遵循各种指南,现在已经挣扎了几个小时,但没有成功。也许你能帮我 我想上传一个文件到一个带有PHP表单的网页(使用POST),然后按照网页给出的重定向,下载后续的网页/HTML文件。据我所知,cURL应该用于这类工作(如你所见,我对这一点完全陌生) 下面是我想上传的测试文件: 隐藏链接 这是带有PHP表单的网页,我想将测试文件上载到该网页: 隐藏链接 您可以在浏览器中手动上载测试文件。然后,该网页会将您重定向到一个带有大表的新网页。然后可以手动保存此网站/HTML文件 我想在终端中复制这种方法,而不必使用浏览器 这是我到目前为止一直在使用的代码:Php 使用curl上传文件,遵循重定向并下载后续网页,php,html,redirect,curl,post,Php,Html,Redirect,Curl,Post,如果我所要求的是显而易见的,或者已经在其他地方得到了回答,请提前道歉。我试着遵循各种指南,现在已经挣扎了几个小时,但没有成功。也许你能帮我 我想上传一个文件到一个带有PHP表单的网页(使用POST),然后按照网页给出的重定向,下载后续的网页/HTML文件。据我所知,cURL应该用于这类工作(如你所见,我对这一点完全陌生) 下面是我想上传的测试文件: 隐藏链接 这是带有PHP表单的网页,我想将测试文件上载到该网页: 隐藏链接 您可以在浏览器中手动上载测试文件。然后,该网页会将您重定向到一个带有大表
curl -vL --form fileToUpload=@Test_Upload.txt --form press=submit *hiddenlink* -o savedpage.html
我们的想法是上传测试文件,然后按照重定向将新网页另存为savedpage.html。这是行不通的。这方面你能给我指路吗?再次表示最深切的歉意,但这是我第一次使用cURL。我看到的主要问题是,您发布到了错误的页面进行上传 表单本身位于
/upload/
是您要发布的内容,但如果查看表单的HTML,则操作是upload.php
。这是您应该引导您的请求的地方。注意:curl不读取HTML,因此它无法理解通过发布到第一个URL,您希望它随后发送到HTML中定义的表单;你必须想出办法,自己动手
curl -v -F fileToUpload=@foo.txt \
-F submit='Upload File' \
-o savedpage.html \
http://www.example.com/upload/upload.php
-L
不是必需的,因为站点似乎没有发送任何位置
标题;尽管如此,拥有它并没有什么坏处。非常感谢您!事实上,这确实起到了作用——我确信我实际上已经尝试了两个链接,但可能是另一个脚本组合!谢谢!