【问题标题】:How to block images from being scraped by file_get_contents or wget, and how to counter it?如何阻止图像被 file_get_contents 或 wget 抓取,以及如何应对?
【发布时间】:2019-11-12 23:25:56
【问题描述】:

我的客户正在新浪博客上写博客,她只喜欢它的编辑器。因此,在她提交博客后,我使用小型 sn-p 将图像和文本抓取到她自己的博客网站。它的核心是

$url = 'http://s5.sinaimg.cn/bmiddle/001MEJWgzy7xxRaXmDyd4&690';
$img_data = @file_get_contents($url);
$img = file_put_contents('1.jpg',$img_data);

虽然听起来很奇怪,但它确实运作良好,为我们俩节省了大量时间。但最近图像变成了空白,带有一些水印。我猜新浪终于发现了我们的小伎俩并阻止了图像被抓取。我只是好奇阻止是如何进行的,更重要的是,有没有办法解决?我试过wget http://s5.sinaimg.cn/bmiddle/001MEJWgzy7xxRaXmDyd4&690也只能得到空白图片。

【问题讨论】:

    标签: image-processing web-scraping file-get-contents


    【解决方案1】:

    只是一个建议——网站检测爬虫的最简单(也是最有可能)的方法是查看请求标头,最常见的是“Accept”、“Referrer”和“User-Agent”。您可以尝试复制“真实”浏览器发送的值并将它们插入 wget 调用,如下所示:

    希望有帮助!

    【讨论】:

      猜你喜欢
      • 2013-11-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多