code: def _build_hash_string(self):
          
          # Build AUTENTICATION hash_string
          # Check if hash_string exists
          if self.site_name in SITE_LIST or self.hash_string:
              if self.username and self.password:
                  try:
                      hash_string = self.hash_string.format(self.password)
                  except TypeError:
                      raise PybooruError("Pybooru can't add 'password' "
                                         "to 'hash_string'")
                  # encrypt hashed_string to SHA1 and return hexdigest string
                  self.password_hash = hashlib.sha1(
                      hash_string.encode('utf-8')).hexdigest()
              else:
                  raise PybooruError("Specify the 'username' and 'password' "
                                     "parameters of the Pybooru object, for "
                                     "setting 'password_hash' attribute.")
          else:
              raise PybooruError(
                  "Specify the 'hash_string' parameter of the Pybooru"
                  " object, for the functions that requires login.")
docs: Function for build password hash string.
  
          Raises:
              PybooruError: When isn't provide hash string.
              PybooruError: When aren't provide username or password.
              PybooruError: When Pybooru can't add password to hash strring.