def get_file_clusters(self, this_date, timeout=None):
        """ File similarity clusters for a given time frame.

        VirusTotal has built its own in-house file similarity clustering functionality. At present, this clustering
        works only on PE, PDF, DOC and RTF files and is based on a very simple structural feature hash. This hash
        can very often be confused by certain compression and packing strategies, in other words, this clustering
        logic is no holly grail, yet it has proven itself very useful in the past.

        This API offers a programmatic access to the clustering section of VirusTotal Intelligence:
        https://www.virustotal.com/intelligence/clustering/

        NOTE:
        Please note that you must be logged in with a valid VirusTotal Community user account with access to
        VirusTotal Intelligence in order to be able to view the clustering listing.

        :param this_date: A specific day for which we want to access the clustering details, example: 2013-09-10.
        :param timeout: The amount of time in seconds the request should wait before timing out.

        :return: JSON object contains several properties
        num_candidates - Total number of files submitted during the given time frame for which a feature hash could
                         be calculated.
        num_clusters   - Total number of clusters generated for the given time period under consideration, a cluster
                         can be as small as an individual file, meaning that no other feature-wise similar file was
                         found.
        size_top200	   - The sum of the number of files in the 200 largest clusters identified.
        clusters       - List of JSON objects that contain details about the 200 largest clusters identified. These
                         objects contain 4 properties: id, label, size and avg_positives.. The id field can be used
                         to then query the search API call for files contained in the given cluster. The label
                         property is a verbose human-intelligible name for the cluster. The size field is the number
                         of files that make up the cluster. Finally, avg_positives represents the average number of
                         antivirus detections that the files in the cluster exhibit.
        """
        params = {'apikey': self.api_key, 'date': this_date}

        try:
            response = requests.get(self.base + 'file/clusters', params=params, proxies=self.proxies, timeout=timeout)
        except requests.RequestException as e:
            return dict(error=str(e))

        return _return_response_and_status_code(response)
def get_file_clusters ( self , this_date , timeout = None ) : params = { 'apikey' : self . api_key , 'date' : this_date } try : response = requests . get ( self . base + 'file/clusters' , params = params , proxies = self . proxies , timeout = timeout ) except requests . RequestException as e : return dict ( error = str ( e ) ) return _return_response_and_status_code ( response )
File similarity clusters for a given time frame.

        VirusTotal has built its own in-house file similarity clustering functionality. At present, this clustering
        works only on PE, PDF, DOC and RTF files and is based on a very simple structural feature hash. This hash
        can very often be confused by certain compression and packing strategies, in other words, this clustering
        logic is no holly grail, yet it has proven itself very useful in the past.

        This API offers a programmatic access to the clustering section of VirusTotal Intelligence:
        https://www.virustotal.com/intelligence/clustering/

        NOTE:
        Please note that you must be logged in with a valid VirusTotal Community user account with access to
        VirusTotal Intelligence in order to be able to view the clustering listing.

        :param this_date: A specific day for which we want to access the clustering details, example: 2013-09-10.
        :param timeout: The amount of time in seconds the request should wait before timing out.

        :return: JSON object contains several properties
        num_candidates - Total number of files submitted during the given time frame for which a feature hash could
                         be calculated.
        num_clusters   - Total number of clusters generated for the given time period under consideration, a cluster
                         can be as small as an individual file, meaning that no other feature-wise similar file was
                         found.
        size_top200	   - The sum of the number of files in the 200 largest clusters identified.
        clusters       - List of JSON objects that contain details about the 200 largest clusters identified. These
                         objects contain 4 properties: id, label, size and avg_positives.. The id field can be used
                         to then query the search API call for files contained in the given cluster. The label
                         property is a verbose human-intelligible name for the cluster. The size field is the number
                         of files that make up the cluster. Finally, avg_positives represents the average number of
                         antivirus detections that the files in the cluster exhibit.