class ShackKit::Data::QRZ_PL
Constants
- QUERY_URL
Public Class Methods
lookup(callsign)
click to toggle source
# File lib/shack_kit/data/qrz_pl.rb, line 6 def self.lookup(callsign) response = HTTP.post("http://qrz.pl/callbook.asp", form: { "F_DOMENA": callsign }) document = Oga.parse_html(response.to_s) return { error: "Not found: #{callsign}"} unless document.xpath('//span[contains(@class, "znak")]').text == callsign details = document.xpath('//span[contains(@class, "dane")]').map(&:text) { callsign: callsign, details: details, grid: grid_lookup(details) } end
Private Class Methods
grid_lookup(details)
click to toggle source
# File lib/shack_kit/data/qrz_pl.rb, line 17 def self.grid_lookup(details) return nil unless grid_info = details.select{ |d| d =~ /^LOKATOR\: [A-Z]{2}\d{2}/}.first grid_info.split.last end