我正在使用此功能将Cookie保存在文本文件中:
$cookie_file_path = "".dirname(__FILE__)."/cookie.txt"; // Please set your Cookie File path
$fp = fopen($cookie_file_path,'wb');
fclose($fp);
$ch = curl_init();
// other curl functions here //
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file_path);
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file_path);
$loginpage_html = curl_exec ($ch);
curl_close ($ch);
它将cookie保存到与cookie.txt相同的文件夹中,并在连接时使用相同的cookie。
我想将图像(css,scripts + everythings)保存到同一个文件夹中。任何建议?
答案 0 :(得分:0)
我建议使用php DOM扩展http://php.net/manual/en/book.dom.php
这与javascript类似。您只需循环通过<img>, <script> <style>,
等典型标记搜索属性src并获取引用资源的链接,并使用相同的cURL或file_get_contents检索这些内容。
查看DOM手册,它有很多有用的评论。
答案 1 :(得分:0)
使用递归开关尝试wget
答案 2 :(得分:0)
首先我看到你使用fopen和fclose创建文件,你可以使用触摸功能。
cURL仅用于获取所请求页面的内容。然后你可以做的就是解析链接的HTML并在循环中使用cURL来获取它们。
有一个set_opt CURLOPT_FILE,它是输出的去处。例如:
<?php
foreach($links as $link){
$file = dirname(__FILE__)."/".basename($link);
touch($file);
// get page
$ch = curl_init();
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file_path);
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file_path);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FILE, $file);
$output = curl_exec($ch);
curl_close ($ch);
}
?>
我没有检查代码,但这是你想要的基础。只需使用正则表达式或一些函数来获取链接。