Class: SearchApi::GoogleScholarRequest
- Defined in:
- lib/searchapi/google_scholar_request.rb
Constant Summary
Constants inherited from Request
Instance Method Summary collapse
Methods inherited from Request
Constructor Details
This class inherits a constructor from SearchApi::Request
Instance Method Details
#search(query = nil, options = nil, &block) ⇒ Object
4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
# File 'lib/searchapi/google_scholar_request.rb', line 4 def search( query = nil, = nil, &block ) if = .is_a?( GoogleScholarOptions ) ? : GoogleScholarOptions.build!( .to_h ) = .to_h else = { engine: 'google_scholar' } end [ :q ] = query.to_s if query response = get( "#{ BASE_URI }/search", , &block ) attributes = ( JSON.parse( response.body, symbolize_names: true ) rescue nil ) result = if response.success? GoogleScholarResult.new( attributes || {} ) else ErrorResult.new( response.status, attributes ) end ResponseMethods.install( response, result ) end |