0

我想要做的是:

  1. 用户使用jing等应用程序截取屏幕截图。行!
  2. 粘贴Jing返回的链接。行!
  3. 服务器处理用户输入的链接,并提取图像源 url。但是,我不知道服务器将如何获得“干净”的图像源 URL。例如,这是 Jing 分享截图后返回的链接http://screencast.com/t/zxBzNNkcg但图片的真实 url 看起来像http://content.screencast.com/users/TT13/folders/Jing/media /c25ec5c6-bc6a-413c-a50b-ada95fac4ed2/2012-07-25_0221.png
  4. 服务器返回图像源 URL。不知道!

有没有可能使用 Javascript 或 PHP 获取图像 url 的方法?

4

4 回答 4

1

您可以使用Simple PHP DOM Parser 从 url 中检索图像,而无需考虑 url,只要它包含和内部的图像,如下所示:

foreach($html->find('div[class=div-that-contain-the image]') as $div) {         
        foreach($div->find('img') as $img){     
            echo "<img src='" . $img->src . "'/>";          
        }

    }

这就是我的解决方案。

于 2012-07-25T01:34:57.507 回答
0

您可以使用Query Path 之类的 DOM 库检索包含图像的页面。

使用它,您可以提取图像的 URL。

所以在你的第3步:

于 2012-07-25T01:31:34.910 回答
0

是的。如果您右键单击图像并转到复制图像位置,您会看到它是http://content.screencast.com/users/TT13/folders/Jing/media/c25ec5c6-bc6a-413c-a50b-ada95fac4ed2/2012- 07-25_0221.png

如果您以编程方式执行此操作,您将使用 cURL 和 simplehtmldom.sourceforge.net 来解析输出的 HTML 以获得实际链接。

于 2012-07-25T01:33:29.043 回答
0

Javascript 答案:

输出图像是否总是具有相同的类别embeddedObject

如果是这样,怎么样:

myVar = document.getElementsByClassName('embeddedObject');
myVar[0].getAttribute("src");

引用当然假设页面上只有一个带有 embeddedObject 类的myVar[0]图像,否则您需要排序,或者知道每次要引用哪个索引。

此外,令人遗憾的是,IE8 似乎不支持此功能(您需要支持哪种浏览器?): http ://caniuse.com/getelementsbyclassname

于 2012-07-25T03:01:02.390 回答