Pārlūkot izejas kodu

Flake8 and Twitter corrections

Lots of Flake8 corrections
Maybe we should change the rule to allow lines of 120 chars. It seems more usable.

Big twitter correction : now it outputs the words in right order...
Cqoicebordel 10 gadus atpakaļ
vecāks
revīzija
5d977056f7

+ 2
- 2
searx/engines/500px.py Parādīt failu

@@ -35,9 +35,9 @@ def request(query, params):
35 35
 # get response from search-request
36 36
 def response(resp):
37 37
     results = []
38
-    
38
+
39 39
     dom = html.fromstring(resp.text)
40
-    
40
+
41 41
     # parse results
42 42
     for result in dom.xpath('//div[@class="photo"]'):
43 43
         link = result.xpath('.//a')[0]

+ 2
- 2
searx/engines/__init__.py Parādīt failu

@@ -81,7 +81,7 @@ def load_engine(engine_data):
81 81
         if engine_attr.startswith('_'):
82 82
             continue
83 83
         if getattr(engine, engine_attr) is None:
84
-            print('[E] Engine config error: Missing attribute "{0}.{1}"'\
84
+            print('[E] Engine config error: Missing attribute "{0}.{1}"'
85 85
                   .format(engine.name, engine_attr))
86 86
             sys.exit(1)
87 87
 
@@ -102,7 +102,7 @@ def load_engine(engine_data):
102 102
     if engine.shortcut:
103 103
         # TODO check duplications
104 104
         if engine.shortcut in engine_shortcuts:
105
-            print('[E] Engine config error: ambigious shortcut: {0}'\
105
+            print('[E] Engine config error: ambigious shortcut: {0}'
106 106
                   .format(engine.shortcut))
107 107
             sys.exit(1)
108 108
         engine_shortcuts[engine.shortcut] = engine.name

+ 2
- 1
searx/engines/digg.py Parādīt failu

@@ -52,7 +52,8 @@ def response(resp):
52 52
         thumbnail = result.xpath('.//img')[0].attrib.get('src')
53 53
         title = ''.join(result.xpath(title_xpath))
54 54
         content = escape(''.join(result.xpath(content_xpath)))
55
-        publishedDate = parser.parse(result.xpath(pubdate_xpath)[0].attrib.get('datetime'))
55
+        pubdate = result.xpath(pubdate_xpath)[0].attrib.get('datetime')
56
+        publishedDate = parser.parse(pubdate)
56 57
 
57 58
         # append result
58 59
         results.append({'url': url,

+ 9
- 3
searx/engines/flickr-noapi.py Parādīt failu

@@ -53,7 +53,8 @@ def response(resp):
53 53
 
54 54
     for photo in photos:
55 55
 
56
-        # In paged configuration, the first pages' photos are represented by a None object
56
+        # In paged configuration, the first pages' photos
57
+        # are represented by a None object
57 58
         if photo is None:
58 59
             continue
59 60
 
@@ -74,10 +75,15 @@ def response(resp):
74 75
 
75 76
         title = photo['title']
76 77
 
77
-        content = '<span class="photo-author">' + photo['owner']['username'] + '</span><br />'
78
+        content = '<span class="photo-author">' +\
79
+                  photo['owner']['username'] +\
80
+                  '</span><br />'
78 81
 
79 82
         if 'description' in photo:
80
-            content = content + '<span class="description">' + photo['description'] + '</span>'
83
+            content = content +\
84
+                      '<span class="description">' +\
85
+                      photo['description'] +\
86
+                      '</span>'
81 87
 
82 88
         # append result
83 89
         results.append({'url': url,

+ 19
- 12
searx/engines/flickr.py Parādīt failu

@@ -1,10 +1,10 @@
1 1
 #!/usr/bin/env python
2 2
 
3 3
 ## Flickr (Images)
4
-# 
4
+#
5 5
 # @website     https://www.flickr.com
6
-# @provide-api yes (https://secure.flickr.com/services/api/flickr.photos.search.html) 
7
-# 
6
+# @provide-api yes (https://secure.flickr.com/services/api/flickr.photos.search.html)
7
+#
8 8
 # @using-api   yes
9 9
 # @results     JSON
10 10
 # @stable      yes
@@ -18,16 +18,20 @@ categories = ['images']
18 18
 
19 19
 nb_per_page = 15
20 20
 paging = True
21
-api_key= None
21
+api_key = None
22 22
 
23 23
 
24
-url = 'https://api.flickr.com/services/rest/?method=flickr.photos.search&api_key={api_key}&{text}&sort=relevance&extras=description%2C+owner_name%2C+url_o%2C+url_z&per_page={nb_per_page}&format=json&nojsoncallback=1&page={page}'
24
+url = 'https://api.flickr.com/services/rest/?method=flickr.photos.search' +\
25
+      '&api_key={api_key}&{text}&sort=relevance' +\
26
+      '&extras=description%2C+owner_name%2C+url_o%2C+url_z' +\
27
+      '&per_page={nb_per_page}&format=json&nojsoncallback=1&page={page}'
25 28
 photo_url = 'https://www.flickr.com/photos/{userid}/{photoid}'
26 29
 
27 30
 paging = True
28 31
 
32
+
29 33
 def build_flickr_url(user_id, photo_id):
30
-    return photo_url.format(userid=user_id,photoid=photo_id)
34
+    return photo_url.format(userid=user_id, photoid=photo_id)
31 35
 
32 36
 
33 37
 def request(query, params):
@@ -40,7 +44,7 @@ def request(query, params):
40 44
 
41 45
 def response(resp):
42 46
     results = []
43
-    
47
+
44 48
     search_results = loads(resp.text)
45 49
 
46 50
     # return empty array if there are no results
@@ -64,11 +68,14 @@ def response(resp):
64 68
         url = build_flickr_url(photo['owner'], photo['id'])
65 69
 
66 70
         title = photo['title']
67
-        
68
-        content = '<span class="photo-author">'+ photo['ownername'] +'</span><br />'
69
-        
70
-        content = content + '<span class="description">' + photo['description']['_content'] + '</span>'
71
-        
71
+
72
+        content = '<span class="photo-author">' +\
73
+                  photo['ownername'] +\
74
+                  '</span><br />' +\
75
+                  '<span class="description">' +\
76
+                  photo['description']['_content'] +\
77
+                  '</span>'
78
+
72 79
         # append result
73 80
         results.append({'url': url,
74 81
                         'title': title,

+ 3
- 2
searx/engines/kickass.py Parādīt failu

@@ -24,7 +24,7 @@ search_url = url + 'search/{search_term}/{pageno}/'
24 24
 
25 25
 # specific xpath variables
26 26
 magnet_xpath = './/a[@title="Torrent magnet link"]'
27
-#content_xpath = './/font[@class="detDesc"]//text()'
27
+content_xpath = './/span[@class="font11px lightgrey block"]'
28 28
 
29 29
 
30 30
 # do search-request
@@ -56,7 +56,8 @@ def response(resp):
56 56
         link = result.xpath('.//a[@class="cellMainLink"]')[0]
57 57
         href = urljoin(url, link.attrib['href'])
58 58
         title = ' '.join(link.xpath('.//text()'))
59
-        content = escape(html.tostring(result.xpath('.//span[@class="font11px lightgrey block"]')[0], method="text"))
59
+        content = escape(html.tostring(result.xpath(content_xpath)[0],
60
+                                       method="text"))
60 61
         seed = result.xpath('.//td[contains(@class, "green")]/text()')[0]
61 62
         leech = result.xpath('.//td[contains(@class, "red")]/text()')[0]
62 63
 

+ 9
- 9
searx/engines/searchcode_code.py Parādīt failu

@@ -11,7 +11,6 @@
11 11
 from urllib import urlencode
12 12
 from json import loads
13 13
 import cgi
14
-import re
15 14
 
16 15
 # engine dependent config
17 16
 categories = ['it']
@@ -33,7 +32,7 @@ def request(query, params):
33 32
 # get response from search-request
34 33
 def response(resp):
35 34
     results = []
36
-    
35
+
37 36
     search_results = loads(resp.text)
38 37
 
39 38
     # parse results
@@ -41,21 +40,22 @@ def response(resp):
41 40
         href = result['url']
42 41
         title = "" + result['name'] + " - " + result['filename']
43 42
         content = result['repo'] + "<br />"
44
-        
43
+
45 44
         lines = dict()
46 45
         for line, code in result['lines'].items():
47 46
             lines[int(line)] = code
48 47
 
49 48
         content = content + '<pre class="code-formatter"><table class="code">'
50 49
         for line, code in sorted(lines.items()):
51
-            content = content + '<tr><td class="line-number" style="padding-right:5px;">' 
52
-            content = content + str(line) + '</td><td class="code-snippet">' 
53
-            # Replace every two spaces with ' &nbps;' to keep formatting while allowing the browser to break the line if necessary
54
-            content = content + cgi.escape(code).replace('\t', '    ').replace('  ', '&nbsp; ').replace('  ', ' &nbsp;') 
50
+            content = content + '<tr><td class="line-number" style="padding-right:5px;">'
51
+            content = content + str(line) + '</td><td class="code-snippet">'
52
+            # Replace every two spaces with ' &nbps;' to keep formatting
53
+            # while allowing the browser to break the line if necessary
54
+            content = content + cgi.escape(code).replace('\t', '    ').replace('  ', '&nbsp; ').replace('  ', ' &nbsp;')
55 55
             content = content + "</td></tr>"
56
-            
56
+
57 57
         content = content + "</table></pre>"
58
-        
58
+
59 59
         # append result
60 60
         results.append({'url': href,
61 61
                         'title': title,

+ 11
- 4
searx/engines/searchcode_doc.py Parādīt failu

@@ -31,15 +31,22 @@ def request(query, params):
31 31
 # get response from search-request
32 32
 def response(resp):
33 33
     results = []
34
-    
34
+
35 35
     search_results = loads(resp.text)
36 36
 
37 37
     # parse results
38 38
     for result in search_results['results']:
39 39
         href = result['url']
40
-        title = "[" + result['type'] + "] " + result['namespace'] + " " + result['name']
41
-        content = '<span class="highlight">[' + result['type'] + "] " + result['name'] + " " + result['synopsis'] + "</span><br />" + result['description']
42
-        
40
+        title = "[" + result['type'] + "] " +\
41
+                result['namespace'] +\
42
+                " " + result['name']
43
+        content = '<span class="highlight">[' +\
44
+                  result['type'] + "] " +\
45
+                  result['name'] + " " +\
46
+                  result['synopsis'] +\
47
+                  "</span><br />" +\
48
+                  result['description']
49
+
43 50
         # append result
44 51
         results.append({'url': href,
45 52
                         'title': title,

+ 6
- 2
searx/engines/subtitleseeker.py Parādīt failu

@@ -60,10 +60,14 @@ def response(resp):
60 60
 
61 61
         content = result.xpath('.//div[contains(@class,"red")]//text()')[0]
62 62
         content = content + " - "
63
-        content = content + html.tostring(result.xpath('.//div[contains(@class,"grey-web")]')[0], method='text')
63
+        text = result.xpath('.//div[contains(@class,"grey-web")]')[0]
64
+        content = content + html.tostring(text, method='text')
64 65
 
65 66
         if result.xpath(".//span") != []:
66
-            content = content + " - (" + result.xpath(".//span//text()")[0].strip() + ")"
67
+            content = content +\
68
+                      " - (" +\
69
+                      result.xpath(".//span//text()")[0].strip() +\
70
+                      ")"
67 71
 
68 72
         # append result
69 73
         results.append({'url': href,

+ 4
- 3
searx/engines/twitter.py Parādīt failu

@@ -28,7 +28,7 @@ search_url = base_url+'search?'
28 28
 results_xpath = '//li[@data-item-type="tweet"]'
29 29
 link_xpath = './/small[@class="time"]//a'
30 30
 title_xpath = './/span[@class="username js-action-profile-name"]//text()'
31
-content_xpath = './/p[@class="js-tweet-text tweet-text"]//text()'
31
+content_xpath = './/p[@class="js-tweet-text tweet-text"]'
32 32
 timestamp_xpath = './/span[contains(@class,"_timestamp")]'
33 33
 
34 34
 
@@ -54,10 +54,11 @@ def response(resp):
54 54
         link = tweet.xpath(link_xpath)[0]
55 55
         url = urljoin(base_url, link.attrib.get('href'))
56 56
         title = ''.join(tweet.xpath(title_xpath))
57
-        content = escape(''.join(tweet.xpath(content_xpath)))
57
+        content = escape(html.tostring(tweet.xpath(content_xpath)[0], method='text', encoding='UTF-8').decode("utf-8"))
58 58
         pubdate = tweet.xpath(timestamp_xpath)
59 59
         if len(pubdate) > 0:
60
-            publishedDate = datetime.fromtimestamp(float(pubdate[0].attrib.get('data-time')), None)
60
+            timestamp = float(pubdate[0].attrib.get('data-time'))
61
+            publishedDate = datetime.fromtimestamp(timestamp, None)
61 62
             # append result
62 63
             results.append({'url': url,
63 64
                             'title': title,

+ 0
- 1
searx/https_rewrite.py Parādīt failu

@@ -154,7 +154,6 @@ def load_https_rules(rules_path):
154 154
     print(' * {n} https-rules loaded'.format(n=len(https_rules)))
155 155
 
156 156
 
157
-
158 157
 def https_url_rewrite(result):
159 158
     skip_https_rewrite = False
160 159
     # check if HTTPS rewrite is possible

+ 10
- 4
searx/search.py Parādīt failu

@@ -69,11 +69,16 @@ def threaded_requests(requests):
69 69
                 print('engine timeout: {0}'.format(th._engine_name))
70 70
 
71 71
 
72
-
73 72
 # get default reqest parameter
74 73
 def default_request_params():
75 74
     return {
76
-        'method': 'GET', 'headers': {}, 'data': {}, 'url': '', 'cookies': {}, 'verify': True}
75
+        'method': 'GET',
76
+        'headers': {},
77
+        'data': {},
78
+        'url': '',
79
+        'cookies': {},
80
+        'verify': True
81
+    }
77 82
 
78 83
 
79 84
 # create a callback wrapper for the search engine results
@@ -487,14 +492,15 @@ class Search(object):
487 492
                 continue
488 493
 
489 494
             # append request to list
490
-            requests.append((req, request_params['url'], request_args, selected_engine['name']))
495
+            requests.append((req, request_params['url'],
496
+                             request_args,
497
+                             selected_engine['name']))
491 498
 
492 499
         if not requests:
493 500
             return results, suggestions, answers, infoboxes
494 501
         # send all search-request
495 502
         threaded_requests(requests)
496 503
 
497
-
498 504
         while not results_queue.empty():
499 505
             engine_name, engine_results = results_queue.get_nowait()
500 506
 

+ 3
- 2
searx/utils.py Parādīt failu

@@ -30,8 +30,9 @@ def gen_useragent():
30 30
 
31 31
 
32 32
 def searx_useragent():
33
-    return 'searx/{searx_version} {suffix}'.format(searx_version=VERSION_STRING,
34
-                                          suffix=settings['server'].get('useragent_suffix', ''))
33
+    return 'searx/{searx_version} {suffix}'.format(
34
+           searx_version=VERSION_STRING,
35
+           suffix=settings['server'].get('useragent_suffix', ''))
35 36
 
36 37
 
37 38
 def highlight_content(content, query):