我从网上刮回来了这个数组。看起来是这样的:
[["formatted_sum_fees", "£5.60"],
["formatted_price", "£46.50"],
["formatted_sum_fees", "£4.50"],
["formatted_price", "£37.50"],
["formatted_sum_fees", "£3.30"],
["formatted_price", "£27.50"],
["formatted_sum_fees", "£3.30"],
["formatted_price", "£27.50"],
["formatted_sum_fees", "£4.50"],
["formatted_price", "£37.50"],
["formatted_sum_fees", "£4.50"],
["formatted_price", "£37.50"],
["formatted_sum_fees", "£4.50"],
["formatted_price", "£37.50"],
["formatted_sum_fees", "£5.60"],
["formatted_price", "£46.50"],
["formatted_sum_fees", "£4.50"],
["formatted_price", "£37.50"],
["formatted_sum_fees", "£5.60"],
["formatted_price", "£46.50"],
["formatted_sum_fees", "£4.50"],
["formatted_price", "£37.50"],
["formatted_sum_fees", "£3.30"],
["formatted_price", "£27.50"]]那么会发生什么呢?因此,我希望将上面的数组更改为这个数组(每次都是不同的,因此需要删除重复的数组):
[["formatted_sum_fees", "£5.60"],
["formatted_price", "£46.50"],
["formatted_sum_fees", "£4.50"],
["formatted_price", "£37.50"],
["formatted_sum_fees", "£3.30"],
["formatted_price", "£27.50"]这之后存在的任何其他东西都是个骗局。
我需要的是一个var的费用和价格,这样我就可以将它保存到数据库中:)
谢谢萨姆
额外的在这里收集任务。
require "nokogiri"
require "open-uri"
namespace :task do
task test: :environment do
ticketmaster_url = "http://www.ticketmaster.co.uk/derren-brown-miracle-glasgow-04-07-2016/event/370050789149169E?artistid=1408737&majorcatid=10002&minorcatid=53&tpab=-1"
doc = Nokogiri::HTML(open(ticketmaster_url))
event_name = nil
ticket_price = nil
doc.xpath("//script[@type='text/javascript']/text()").each do |text|
if text.content =~ /more_options_on_polling/
ticket_price = text.to_s.scan(/\"(formatted_(?:price|sum_fees))\":\"(.+?)\"/)
byebug
end
end
end
end发布于 2016-05-31 11:04:05
您只需将uniq方法添加到从web刮取的数组上,这将从该数组中给出一个uniq值,然后您可以轻松地迭代该数组,将值存储到数据库中。
发布于 2016-05-31 09:12:24
你可以用
[["formatted_sum_fees", "£5.60"],
["formatted_price", "£46.50"],
["formatted_sum_fees", "£4.50"],
["formatted_price", "£37.50"],
["formatted_sum_fees", "£3.30"],
["formatted_price", "£27.50"],
["formatted_sum_fees", "£3.30"],
["formatted_price", "£27.50"],
["formatted_sum_fees", "£4.50"],
["formatted_price", "£37.50"],
["formatted_sum_fees", "£4.50"],
["formatted_price", "£37.50"],
["formatted_sum_fees", "£4.50"],
["formatted_price", "£37.50"],
["formatted_sum_fees", "£5.60"],
["formatted_price", "£46.50"],
["formatted_sum_fees", "£4.50"],
["formatted_price", "£37.50"],
["formatted_sum_fees", "£5.60"],
["formatted_price", "£46.50"],
["formatted_sum_fees", "£4.50"],
["formatted_price", "£37.50"],
["formatted_sum_fees", "£3.30"],
["formatted_price", "£27.50"]].uniq结果是:
[["formatted_sum_fees", "£5.60"], ["formatted_price", "£46.50"], ["formatted_sum_fees", "£4.50"], ["formatted_price", "£37.50"], ["formatted_sum_fees", "£3.30"], ["formatted_price", "£27.50"]]https://stackoverflow.com/questions/37540892
复制相似问题