如何从使用XMLHttpRequest检索的html文档中获取图像?

霍布斯2000

我想获取外部网页的第一张图片,然后显示它。我使用XMLHttpRequest从网页获取文档,然后搜索该文档中的第一个图像,然后显示它。但没有图像显示。这是针对chrome应用程序,而不是网页/网站。这是我的JavaScript:

var xhr = new XMLHttpRequest();
xhr.open('GET', 'https://ab.reddit.com/', true);
xhr.responseType = 'document';
xhr.onload = function(e) {
  var ext_doc = this.response;
  var img_src = ext_doc.getElementsByTagName("img")[0];
  var img_html = document.querySelector('#TestImage2');
  img_html.src = img_src.src;
};
xhr.send();
霍布斯2000

我发现了问题。我不能直接将图像src设置为从外部html文档检索到的外部图像的url src。我必须为新发现的图像scr url发送另一个XMLHttpRequest,并将其作为blob检索。然后将图像src设置为window.URL.createObjectURL(this.response)this.response是图像斑点。我不太确定为什么出于某些安全原因必须采用这种方式。我还将其放入自己的功能中。pgURL参数是要检索图像的网页的URL。index是网页上所有图像列表中所需图像的索引。并且display是要更改的图像html元素。

function getImage(pgURL, index, display)
{
  var xhr = new XMLHttpRequest();
  xhr.open('GET', pgURL, true);
  xhr.responseType = 'document';
  xhr.onload = function(e) {
    var doc = this.response;
    var img_src = doc.getElementsByTagName("img")[index];
    var src = img_src.src;
    //Have to make a new XMLHttpRequest for the image found because img sources cannot be directly set
    var xhr2 = new XMLHttpRequest();
    xhr2.open('GET',src);
    xhr2.responseType = 'blob'; //Must make blob object of retrieved image
    xhr2.onload = function(e){
        display.src = window.URL.createObjectURL(this.response); //Finally set the src for the image
    };
    xhr2.send();

  };
  xhr.send();
}

提醒!这是针对chrome应用程序,而不是网站。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使用漂亮的汤从html文档中获取<text>标签

获取从较大文档中剪下的图像,以便在 HTML/CSS 中使用 flow 显示

如何使用scrollTop()获取HTML文档的位置?

如何在Golang中从URL检索HTML文档大小

如何使用Aspose.Word获取Word文档中的所有卸载图像

如何使用Java或Spring Boot从Mongodb检索HTML中显示图像

如何动态检索图像src属性并使用JQuery或Javascript循环添加到html中

如何从PHAsset获取图像URL?是否可以使用PHAsset URL将图像保存到文档目录中?

如何从 Firestore 文档中检索密钥(使用 swift 4/ios)

如何在python中使用Selenium获取HTML标记中包含的html文档

如何使用键旋转和转换html文档中的图像?(javascript)

如何使用PHP获取XML文档上的图像元素?

无法使用 XMLHttpRequest 从数组中检索元素

如何存储大量图像以使用html检索

如何使用 Jsoup 从 html 中检索数据

如何使用php从html获取图像名称

如何通过特定标签reg表达式使用JavaScript从HTML文档中获取元素?

如何使用Nokogiri从Ruby中的HTML文档获取所有节点

检索XML文档中的HTML元素

如何使用Open CMIS从露天仓库中检索所有文档内容并分离文档类型

如何使用jQuery检索图像

如何使用Python从Firebase存储中检索图像?

如何使用Jquery从图像库中检索img src

如何使用 reactjs 从服务器路径中检索图像

如何使用MongoEngine从参考字段中检索pdf /图像?

如何从提交的 html 表单中检索值并将其存储在 mongoose 模式中的嵌套文档中

如何使用Delphi在OpenOffice文档中插入图像

如何使用writeToFile将图像保存在文档目录中?

如何发出获取请求以检索Elasticsearch集群中索引的最新文档?