class Query::Engine::BaiduMobile
Constants
- Host
- Options
Public Class Methods
query(wd, params={})
click to toggle source
基本查询,相当于从搜索框直接输入关键词查询
# File lib/query/engine/baidu_mobile.rb, line 11 def self.query(wd, params={}) q = Array.new q << "word=#{URI.encode(wd)}" q << "rn=#{@perpage.to_i}" if @perpage # Join arguments params.each do |k, v| q << "#{k.to_s}=#{v.to_s}" end uri = URI::HTTP.build(:host=>Host,:path=>'/s',:query=>q.join('&')) # begin res = HTTParty.get(uri, Options) r = Query::Result::BaiduMobile.new(res) r.baseuri, r.options = uri, Options r # rescue Exception => e # warn "#{__FILE__} #{__LINE__} #{uri} fetch error: #{e.to_s}" # return false # end end
suggestions(query,options = {})
click to toggle source
# File lib/query/engine/baidu_mobile.rb, line 31 def self.suggestions(query,options = {}) require 'json' query = URI.encode(query) suggestions = HTTParty.get("https://m.baidu.com/su?callback=jsonp11&wd=#{query}",options).to_s suggestions = suggestions.force_encoding('GB18030').encode('UTF-8') suggestions = suggestions.split('s:[')[1].delete(']});').delete('"').split(',').uniq end