代码之家  ›  专栏  ›  技术社区  ›  Michael Kristofik

如何以编程方式从另一个网站刮取图像?

  •  3
  • Michael Kristofik  · 技术社区  · 15 年前

    几年前,我帮助某人建立了一个网页(仅供本地个人使用,不提供给全世界),收集了他最喜欢的几个网站的室外摄像头照片。一次浏览多个网站可以节省时间。当那些网站上的图片有固定的网址时,我们很容易做到。当URL发生可预测的变化时(例如,当URL有日期时),我们能够编写一些JavaScript代码。但现在他想添加一个文件名看起来随机变化的图像,我不知道如何处理。基本上,我想:

    1. 以编程方式访问另一个网站以查找特定图像的URL。
    2. 将该URL插入我的网页 <img> 标签。

    我知道这可能是一个令人困惑和不寻常的问题。我愿意尽可能地帮助澄清。我只是不知道该怎么问这个人想做什么。

    更新: David Dorward提到使用javascript进行此操作违反了 Same Origin Policy . 我愿意接受其他方法来解决这个问题的建议。

    4 回复  |  直到 15 年前
        1
  •  1
  •   Pratik Deoghare    15 年前
    1. 使用获取远程页的HTML Cross Domain AJAX .
    2. 然后对其进行解析,以获取感兴趣的图像的URL。
    3. 然后 for each url do <img src=url />
        2
  •  1
  •   kime waza    15 年前

    这可能是对版权的严重侵犯。

    图片最像是装在一个页面中的——只需定期访问该页面并解析img标签。确保您所评论的随机位不仅仅是一个随机参数,它强制浏览器获取新图像,而不是检索缓存的版本。

        3
  •  0
  •   antyrat Andy    15 年前

    如果在项目中使用PHP,则可以使用curl库获取另一个网站内容,并使用regex解析它从源代码获取图像URL。

        4
  •  0
  •   Tom    15 年前

    您的个人资料中有一个关于python的问题,所以我只想说,如果我尝试这样做,我将使用python& Beautiful Soup .具有处理无效HTML的额外优势。