@@ -0,0 +1,40 @@
1+from urllib import quote
3+from searx.engines.xpath import extract_text
4+from searx.utils import get_torrent_size
5+from urlparse import urljoin
7+url = 'https://1337x.to/'
8+search_url = url + 'search/{search_term}/{pageno}/'
9+categories = ['videos']
13+def request(query, params):
14+ params['url'] = search_url.format(search_term=quote(query), pageno=params['pageno'])
22+ dom = html.fromstring(resp.text)
24+ for result in dom.xpath('//table[contains(@class, "table-list")]/tbody//tr'):
25+ href = urljoin(url, result.xpath('./td[contains(@class, "name")]/a[2]/@href')[0])
26+ title = extract_text(result.xpath('./td[contains(@class, "name")]/a[2]'))
27+ seed = extract_text(result.xpath('.//td[contains(@class, "seeds")]'))
28+ leech = extract_text(result.xpath('.//td[contains(@class, "leeches")]'))
29+ filesize_info = extract_text(result.xpath('.//td[contains(@class, "size")]/text()'))
30+ filesize, filesize_multiplier = filesize_info.split()
31+ filesize = get_torrent_size(filesize, filesize_multiplier)
33+ results.append({'url': href,
37+ 'filesize': filesize,
38+ 'template': 'torrent.html'})