【问题标题】:system() won't accept variables in my wget requestsystem() 不接受我的 wget 请求中的变量
【发布时间】:2013-06-12 19:32:11
【问题描述】:

我的想法就此结束。我终于让 wget 抓取我想要的页面,我想要它,但我无法将变量传递给 system() 函数以循环遍历我想要的所有 URL。

当前工作的 wget 请求:

system('/usr/local/bin/wget -O wget-files/fda-test.txt "@987654321@" 2>&1');

我不能去上班:

我想将文件名设置为 $file_name 并将请求的 URL 设置为 $url 但我尝试的一切都会破坏它。

有几点需要注意,我尝试过 curl,但由于重定向 302,它不起作用。我研究了 Node.js 和 Phantom 以及其他一些解决方案,我对这个项目并不特别喜欢其中的任何一个。 Wget 可以很好地解决这个问题,我只需要使请求动态化,这样我就可以遍历记录。

有什么建议吗?

【问题讨论】:

  • 使用 curl,并遵循重定向 (curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);)。更容易
  • 已经这样做了。 curl 不会得到我需要的东西。 wget 每次都会。即使将 followlocation 设置为 true,curl 也会错过重定向。

标签: php curl system wget


【解决方案1】:

奇怪的 curl 但是尝试:

system('/usr/local/bin/wget -O wget-files/fda-test.txt '.$file_name.$url' 2>&1');

这是我修改后的效果,但感谢龙的对话。 -布伦特

        // Wget the pages
        system('/usr/local/bin/wget -O wget-files/'.$file_name.' "http://www.accessdata.fda.gov/scripts/cder/drugsatfda/index.cfm?'.$source.'" 2>&1');

【讨论】:

  • system('/usr/local/bin/wget -O wget-files/'.$file_name.' "accessdata.fda.gov/scripts/cder/drugsatfda/….'" 2>&1');确实有效。我只需要玩弄格式化。我一直盯着这段代码太久了!大声笑谢谢龙。
  • 哈哈我会的,尽管我几乎自己解决了它。哈哈
  • 那么请随意回答您自己的问题,我认为感谢我意味着它有所帮助。
  • @dragon,老兄不要误会。显然它引发了解决方案,所以(再次)谢谢,我确实标记了它。 :)
猜你喜欢
  • 2021-02-25
  • 2020-07-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-01-30
  • 1970-01-01
  • 2012-04-15
相关资源
最近更新 更多