file_get_contents
curl
php simple html dom解析器
三种方法获取html,图片都不会显示,curl也模拟了浏览器。
以下图文页链接为例
微信图文页面
比如以html dom方式获取代码:
$html = new simple_html_dom(); $html->load_file($artical_url); echo "$html";
php获取代码后,第一张图片的代码:
@@##@@
浏览器访问页面正常显示图片的代码:
立即学习“PHP免费学习笔记(深入)”;
@@##@@
咋么办??
回复内容:
file_get_contents
curl
php simple html dom解析器
三种方法获取html,图片都不会显示,curl也模拟了浏览器。
以下图文页链接为例
微信图文页面
比如以html dom方式获取代码:
$html = new simple_html_dom(); $html->load_file($artical_url); echo "$html";
php获取代码后,第一张图片的代码:
@@##@@
浏览器访问页面正常显示图片的代码:
立即学习“PHP免费学习笔记(深入)”;
@@##@@
咋么办??
感谢楼上的回答,应该不是防盗链的问题,感觉是抓取的时候dom的规则不能判断data-src和src的属性。后来研究了半天,发现simple_html_dom确实个好东西,应该可以在抓取回来后用替换的方式。无奈因对php还不是很熟,语句老是写不正确。后来用js土办法曲线救国,取得php变量内容并正则替换的方式解决了问题。
另外加一句,用html_dom后,别忘了$html->clear。
修改curl header参数 试试
https://segmentfault.com/q/1010000005046169
感觉你的问题跟这个有点像,你试试看











