class Aws::Kendra::Types::WebCrawlerConfiguration

Provides the configuration information required for Amazon Kendra web crawler.

@note When making an API call, you may pass WebCrawlerConfiguration

data as a hash:

    {
      urls: { # required
        seed_url_configuration: {
          seed_urls: ["SeedUrl"], # required
          web_crawler_mode: "HOST_ONLY", # accepts HOST_ONLY, SUBDOMAINS, EVERYTHING
        },
        site_maps_configuration: {
          site_maps: ["SiteMap"], # required
        },
      },
      crawl_depth: 1,
      max_links_per_page: 1,
      max_content_size_per_page_in_mega_bytes: 1.0,
      max_urls_per_minute_crawl_rate: 1,
      url_inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
      url_exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
      proxy_configuration: {
        host: "Host", # required
        port: 1, # required
        credentials: "SecretArn",
      },
      authentication_configuration: {
        basic_authentication: [
          {
            host: "Host", # required
            port: 1, # required
            credentials: "SecretArn", # required
          },
        ],
      },
    }

@!attribute [rw] urls

Specifies the seed or starting point URLs of the websites or the
sitemap URLs of the websites you want to crawl.

You can include website subdomains. You can list up to 100 seed URLs
and up to three sitemap URLs.

*When selecting websites to index, you must adhere to the [Amazon
Acceptable Use Policy][1] and all other Amazon terms. Remember that
you must only use the Amazon Kendra web crawler to index your own
webpages, or webpages that you have authorization to index.*

[1]: https://aws.amazon.com/aup/
@return [Types::Urls]

@!attribute [rw] crawl_depth

Specifies the number of levels in a website that you want to crawl.

The first level begins from the website seed or starting point URL.
For example, if a website has 3 levels – index level (i.e. seed in
this example), sections level, and subsections level – and you are
only interested in crawling information up to the sections level
(i.e. levels 0-1), you can set your depth to 1.

The default crawl depth is set to 2.
@return [Integer]

@!attribute [rw] max_links_per_page

The maximum number of URLs on a webpage to include when crawling a
website. This number is per webpage.

As a website’s webpages are crawled, any URLs the webpages link to
are also crawled. URLs on a webpage are crawled in order of
appearance.

The default maximum links per page is 100.
@return [Integer]

@!attribute [rw] max_content_size_per_page_in_mega_bytes

The maximum size (in MB) of a webpage or attachment to crawl.

Files larger than this size (in MB) are skipped/not crawled.

The default maximum size of a webpage or attachment is set to 50 MB.
@return [Float]

@!attribute [rw] max_urls_per_minute_crawl_rate

The maximum number of URLs crawled per website host per minute.

A minimum of one URL is required.

The default maximum number of URLs crawled per website host per
minute is 300.
@return [Integer]

@!attribute [rw] url_inclusion_patterns

The regular expression pattern to include certain URLs to crawl.

If there is a regular expression pattern to exclude certain URLs
that conflicts with the include pattern, the exclude pattern takes
precedence.
@return [Array<String>]

@!attribute [rw] url_exclusion_patterns

The regular expression pattern to exclude certain URLs to crawl.

If there is a regular expression pattern to include certain URLs
that conflicts with the exclude pattern, the exclude pattern takes
precedence.
@return [Array<String>]

@!attribute [rw] proxy_configuration

Provides configuration information required to connect to your
internal websites via a web proxy.

You must provide the website host name and port number. For example,
the host name of https://a.example.com/page1.html is
"a.example.com" and the port is 443, the standard port for HTTPS.

Web proxy credentials are optional and you can use them to connect
to a web proxy server that requires basic authentication. To store
web proxy credentials, you use a secret in [AWS Secrets Manager][1].

[1]: https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html
@return [Types::ProxyConfiguration]

@!attribute [rw] authentication_configuration

Provides configuration information required to connect to websites
using authentication.

You can connect to websites using basic authentication of user name
and password.

You must provide the website host name and port number. For example,
the host name of https://a.example.com/page1.html is
"a.example.com" and the port is 443, the standard port for HTTPS.
You use a secret in [AWS Secrets Manager][1] to store your
authentication credentials.

[1]: https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html
@return [Types::AuthenticationConfiguration]

@see docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/WebCrawlerConfiguration AWS API Documentation

Constants

SENSITIVE