如何将网站中的图像提取到我的rails项目中?

时间:2013-12-11 23:52:30

标签: html css ruby-on-rails ruby

我对Ruby on rails非常陌生。我正在制作一个Web应用程序,我必须从新闻网站获取RSS提要,我已经使用gem feedzirra完成了。我正在考虑从每个Feed网址中提取图片并将其发布到我的应用程序中。但我不知道哪种宝石适合从不同的网站中提取图像。我想过使用nokogiri或opengraph,但我不知道如何去做。有人可以指导我。谢谢

我想做这样的事情:

 <% @feed = Feedzirra::Feed.fetch_and_parse("http://feeds.bbci.co.uk/news/rss.xml") %>
 <% @feed.inspect %> 
 <% @entries = @feed.entries %>
 <% for i in 0..9 %> 
 <br>
 <b><u><%= @entries[i].title %></u></b>
 </br>
 <br>
 **<%= get image from @entries[i].url %> \\ how can i do this ?**
 </br>
 <% end %>

1 个答案:

答案 0 :(得分:1)

可以使用ActionView image_tag helper来实现,在这种情况下,它会为外部网址创建一个html img标记:

...
<% @entries.each do |entry| %>
  <%= entry.title %>
  <%= image_tag(entry.url) %>
<% end %>

另外,请考虑更多Rubyish方式来迭代我在上面提到的数组元素。

如果你想迭代前10个元素,而不是整个数组(如你的例子中),你可以通过以下方式进行:

<% @entries[0..9].each do |entry| %>
  <%= entry.title %>
  <%= image_tag(entry.url) %>
<% end %> 

修改

好像你可以使用Nokogiri从条目摘要中获取img标签,没有自己测试过但你应该查看这篇博文: http://verboselogging.com/2009/05/24/rss-fun-with-feedzirra