forked from zaclys/searxng
		
	SubtitleSeeker Engine
Add the subtitleseeker engine.
This commit is contained in:
		
							parent
							
								
									2e41bfcbdb
								
							
						
					
					
						commit
						550232fc21
					
				
					 2 changed files with 63 additions and 0 deletions
				
			
		
							
								
								
									
										59
									
								
								searx/engines/subtitleseeker.py
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										59
									
								
								searx/engines/subtitleseeker.py
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,59 @@ | ||||||
|  | ## Subtitleseeker (Video) | ||||||
|  | # | ||||||
|  | # @website     http://www.subtitleseeker.com | ||||||
|  | # @provide-api no | ||||||
|  | # | ||||||
|  | # @using-api   no | ||||||
|  | # @results     HTML | ||||||
|  | # @stable      no (HTML can change) | ||||||
|  | # @parse       url, title, content | ||||||
|  | 
 | ||||||
|  | from cgi import escape | ||||||
|  | from urllib import quote_plus | ||||||
|  | from lxml import html | ||||||
|  | 
 | ||||||
|  | # engine dependent config | ||||||
|  | categories = ['videos'] | ||||||
|  | paging = True | ||||||
|  | 
 | ||||||
|  | # search-url | ||||||
|  | url = 'http://www.subtitleseeker.com/' | ||||||
|  | search_url = url+'search/TITLES/{query}&p={pageno}' | ||||||
|  | 
 | ||||||
|  | # specific xpath variables | ||||||
|  | results_xpath = '//div[@class="boxRows"]' | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | # do search-request | ||||||
|  | def request(query, params): | ||||||
|  |     params['url'] = search_url.format(query=quote_plus(query), | ||||||
|  |                                       pageno=params['pageno']) | ||||||
|  |     return params | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | # get response from search-request | ||||||
|  | def response(resp): | ||||||
|  |     results = [] | ||||||
|  | 
 | ||||||
|  |     dom = html.fromstring(resp.text) | ||||||
|  | 
 | ||||||
|  |     # parse results | ||||||
|  |     for result in dom.xpath(results_xpath): | ||||||
|  |         link = result.xpath(".//a")[0] | ||||||
|  |         href = link.attrib.get('href') | ||||||
|  |         title = escape(link.xpath(".//text()")[0]) | ||||||
|  | 
 | ||||||
|  |         content = result.xpath('.//div[contains(@class,"red")]//text()')[0] | ||||||
|  |         content = content + " - " | ||||||
|  |         content = content + html.tostring(result.xpath('.//div[contains(@class,"grey-web")]')[0], method='text') | ||||||
|  | 
 | ||||||
|  |         if result.xpath(".//span") != []: | ||||||
|  |             content = content + " - (" + result.xpath(".//span//text()")[0].strip() + ")" | ||||||
|  | 
 | ||||||
|  |         # append result | ||||||
|  |         results.append({'url': href, | ||||||
|  |                         'title': title, | ||||||
|  |                         'content': escape(content)}) | ||||||
|  | 
 | ||||||
|  |     # return results | ||||||
|  |     return results | ||||||
|  | @ -127,6 +127,10 @@ engines: | ||||||
|     engine : searchcode_code |     engine : searchcode_code | ||||||
|     shortcut : scc |     shortcut : scc | ||||||
| 
 | 
 | ||||||
|  |   - name : subtitleseeker | ||||||
|  |     engine : subtitleseeker | ||||||
|  |     shortcut : ss | ||||||
|  | 
 | ||||||
|   - name : startpage |   - name : startpage | ||||||
|     engine : startpage |     engine : startpage | ||||||
|     shortcut : sp |     shortcut : sp | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		
		Reference in a new issue
	
	 Cqoicebordel
						Cqoicebordel