Javascript/jQuery - 抓取 IMG SRC

标签 javascript jquery screen-scraping

我正在尝试使用 Javascript 和 jQuery 库抓取数据。

到目前为止一切顺利。我能够从标签之间抓取数据。例如我想从 <li> 获取数据标签,我这样做如下:

stuff_found = $(data).find('li');

但是,如果我尝试从 <img> 获取 src使用以下代码标记,仅返回第一张图像。

stuff_found =  $(data).find('img').attr();

我需要知道如何返回完整列表(页面上的每个图像),而不仅仅是第一行。

最佳答案

最简单的方法是编写图像选择器以仅获取 <li> 内的图像。标签。然后你可以用 .each() 遍历它们或者,如果您真的只需要图像 src属性值,.map() 。例如:

var imageList = $('li img').map(function()
{
    return $(this).attr('src');
}).get();

在代码示例中发生这种情况:

  1. 您首先获得 <li> 内的所有图像标签 - $('li img')部分。
  2. 然后是 .map()您应用一个函数来遍历所有这些并提取一个值。基本上是什么.map()所做的就是它接受一个列表,将给定的函数应用于列表的所有元素,并返回包含新处理的元素的结果列表。
  3. 带有 $(this).attr('src') 的部分得到实际的src来自图像标签的值。
  4. 最后,因为 jQuery 返回它自己的数组类型而不是标准的 javascript 数组,所以您需要执行 .get() - 这就是将返回的对象从 jQuery 数组转换为标准数组的方法。

关于Javascript/jQuery - 抓取 IMG SRC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16201692/

相关文章:

javascript - webGL 忽略背面?

javascript - 制表符添加每行带有按钮的列

javascript - .filter() 然后仅适用于某些 .children()

javascript - tinyMCE textarea focusout 事件?

Jquery Cycle Fade 过渡在 IE 中不起作用

Javascript (Jquery), increment/decrement++/-- operator 计算错误

javascript - 为什么我将 JQuery/CSS 代码导入到我的 Wordpress 网站时它不起作用?

javascript - ASP.NET 屏幕抓取后模拟

ruby - Nokogiri/Mechanize 提取 div 内容?

asp.net - 使用 Python 和 urllib2 抓取 ASP.NET