|
|
|
@ -10,6 +10,7 @@
|
|
|
|
|
@parse url, title, content
|
|
|
|
|
"""
|
|
|
|
|
|
|
|
|
|
import random
|
|
|
|
|
from json import loads
|
|
|
|
|
from time import time
|
|
|
|
|
from lxml.html import fromstring
|
|
|
|
@ -32,7 +33,8 @@ search_string = 'search?{query}'\
|
|
|
|
|
'&qh=0'\
|
|
|
|
|
'&qlang={lang}'\
|
|
|
|
|
'&ff={safesearch}'\
|
|
|
|
|
'&rxikd={rxikd}' # random number - 9 digits
|
|
|
|
|
'&rxieu={rxieu}'\
|
|
|
|
|
'&rand={rxikd}' # current unix timestamp
|
|
|
|
|
|
|
|
|
|
# specific xpath variables
|
|
|
|
|
results_xpath = '//response//result'
|
|
|
|
@ -59,10 +61,12 @@ def request(query, params):
|
|
|
|
|
else:
|
|
|
|
|
safesearch = 0
|
|
|
|
|
|
|
|
|
|
# rxieu is some kind of hash from the search query, but accepts random atm
|
|
|
|
|
search_path = search_string.format(query=urlencode({'q': query}),
|
|
|
|
|
offset=offset,
|
|
|
|
|
number_of_results=number_of_results,
|
|
|
|
|
rxikd=str(time())[:9],
|
|
|
|
|
rxikd=int(time() * 1000),
|
|
|
|
|
rxieu=random.randint(1000000000,9999999999),
|
|
|
|
|
lang=language,
|
|
|
|
|
safesearch=safesearch)
|
|
|
|
|
|
|
|
|
|