web2vec.extractors.ssl_certification_features module

class web2vec.extractors.ssl_certification_features.CertificateFeatures(subject: Dict[str, Any], issuer: Dict[str, Any], not_before: datetime.datetime, not_after: datetime.datetime, is_valid: bool, validity_message: str, is_trusted: bool, trust_message: str)[source]

Bases: object

days_until_expiration: int | None = None
expires_within_30_days: bool | None = None
expires_within_7_days: bool | None = None
is_expired: bool | None = None
is_trusted: bool
is_valid: bool
issuer: Dict[str, Any]
issuer_common_name: str | None = None
issuer_is_free_ca: bool | None = None
issuer_is_lets_encrypt: bool | None = None
issuer_organization_name: str | None = None
not_after: datetime
not_before: datetime
subject: Dict[str, Any]
trust_message: str
valid_in_30_days: bool | None = None
valid_in_7_days: bool | None = None
validity_duration_days: int | None = None
validity_message: str
web2vec.extractors.ssl_certification_features.check_ssl(url: str) bool[source]

Check if the SSL certificate of the URL is valid.

web2vec.extractors.ssl_certification_features.get_certificate_features(hostname: str) CertificateFeatures[source]

Retrieve and analyze the TLS certificate for a given hostname.

web2vec.extractors.ssl_certification_features.get_certificate_features_cached(hostname: str) CertificateFeatures[source]

Get the certificate features for the given hostname.

web2vec.extractors.ssl_certification_features.get_tls_certificate(hostname: str, port: int = 443) Dict[str, Any][source]

Retrieve the TLS certificate for a given hostname and port.

web2vec.extractors.ssl_certification_features.is_certificate_trusted(cert: Dict[str, Any]) Tuple[bool, str][source]

Check if the certificate is trusted by the system’s CA store.

web2vec.extractors.ssl_certification_features.is_certificate_valid(cert: Dict[str, Any]) Tuple[bool, str][source]

Check if the certificate is currently valid based on its validity dates.