Esempio n. 1
0
    def query(self, query, limit=None):
        url = None
        params = {"rrType": "", "maxResults": limit or 1000}
        if re.match("[\d\.]+$", query):
            url = "%s/dns/data" % self.url
            params["ip"] = query
        else:
            url = "%s/dns/name" % self.url
            params["name"] = query

        start_time = time.time()
        data = Provider.get_json(url, "GET", params, Provider.make_auth_header(self.token, self.privkey))
        response_time = time.time() - start_time
        return self._data_to_records(query, data, response_time)
 def query(self, query, limit=None):
     url = self.url
     params = {"api_key" : self.apikey, "query" : query}
     start_time = time.time()
     data = Provider.get_json(url, "GET", params)
     response_time = time.time() - start_time
     return self._data_to_records(query, data, response_time)
Esempio n. 3
0
 def query(self, query, limit=None):
     params = {"apikey" : self.apikey, "version" : "1.0", "q" : query}
     if re.match("[\d\.]+$", query):
         params["type"] = "domainneighbors"
     else:
         params["type"] = "domainipdnshistory"
     
     start_time = time.time()
     reply_data = Provider.get_json(self.url, "GET", params)
     response_time = time.time() - start_time
     return self._data_to_records(query, reply_data, response_time)
Esempio n. 4
0
 def query(self, query, limit=None):
     url = None
     if re.match("[\d\.]+$", query):
         url = "%s/rdata/ip/%s" % (self.url, query)
     else:
         url = "%s/rrset/name/%s" % (self.url, query)
     params = {}
     if limit:
         params["limit"] = limit
     start_time = time.time()
     
     data = Provider.get_json(url, "GET", params, { "X-API-Key" : self.apikey }, True)
     response_time = time.time() - start_time
     return self._data_to_records(query, data, response_time)
Esempio n. 5
0
 def query(self, query, limit=None):
     url = None
     params = {"apikey" : self.apikey}
     if re.match("[\d\.]+$", query):
         url = "%sip-address/report" % self.url
         params["ip"] = query
     else:
         url = "%sdomain/report" % self.url
         params["domain"] = query
     
     start_time = time.time()
     data = Provider.get_json(url, "GET", params)
     response_time = time.time() - start_time
     return self._data_to_records(query, data, response_time)
Esempio n. 6
0
 def query(self, query, limit=None):
     table = "rrset"
     if re.match("\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$", query) or re.match("[0-9a-fA-F]+:[0-9a-fA-F:]+[0-9a-fA-F]$", query):
         table = "rdata"
     limit = limit or 1000
     path = "/api/%s/keyword/%s/count/%s/" % (table, query, limit)
     url = self.url + path
     
     md5 = hashlib.md5()
     
     md5.update((path + self.apikey).encode('utf-8'))
     token = md5.hexdigest()
     headers = { "X-BashTokid" : self.apiid, "X-BashToken" : token }
     params = {}
     start_time = time.time()
     data = Provider.get_json(url, "GET", params, headers)
     response_time = time.time() - start_time
     return self._data_to_records(query, data, response_time)