Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Perayap Web
Web Crawler menghubungkan dan merayapi URL yang Anda tentukan untuk digunakan dalam basis pengetahuan terkelola Anda. Web Crawler melintasi halaman HTML mulai dari URL benih Anda, mengikuti tautan anak sesuai dengan cakupan dan batasan crawling Anda. Anda juga dapat memberikan URL sitemap sebagai titik awal. Web Crawler menghormati robots.txt sesuai dengan RFC 9309.
penting
Saat memilih situs web untuk di-crawl, Anda harus mematuhi Kebijakan Penggunaan yang Dapat Diterima Amazon
catatan
Web Crawler tidak mendukung kontrol akses tingkat dokumen (ACL). Semua konten yang diindeks dapat diakses oleh setiap pengguna yang memiliki akses ke basis pengetahuan. Jika Anda memerlukan pemfilteran ACL, gunakan konektor yang mendukungnya (misalnya, Amazon S3, SharePoint, atau OneDrive).
Fitur yang didukung
-
Merayapi beberapa URL benih dan URL sitemap
-
Kedalaman perayapan yang dapat dikonfigurasi, batas laju, dan batas tautan per URL
-
Kontrol cakupan crawling: host dan jalur yang sama, hanya host, atau host dan subdomain
-
Filter pola URL (ekspresi reguler inklusi dan pengecualian)
-
Merayapi lampiran yang ditautkan dari halaman web (PDF, dokumen, dan sebagainya)
-
Otentikasi untuk situs yang dilindungi: dasar, berbasis formulir, atau SAML
-
Sinkronisasi konten tambahan untuk konten yang ditambahkan, diperbarui, dan dihapus
Metode autentikasi
Web Crawler mendukung empat metode otentikasi. Pilih metode yang cocok dengan cara situs target mengotentikasi pengguna. Untuk situs publik tanpa login, gunakanNO_AUTH.
| Metode | Bagaimana itu mengotentikasi | Kapan harus digunakan |
|---|---|---|
Tidak ada otentikasi (NO_AUTH) |
Perayap mengirim permintaan tanpa kredenSIAL. | Situs web publik yang tidak memerlukan login. |
Otentikasi dasar (BASIC_AUTH) |
Perayap mengirimkan Authorization: Basic header HTTP dengan nama pengguna dan kata sandi dari rahasia Anda. |
Situs dilindungi oleh HTTP Basic Authentication (dialog nama pengguna dan kata sandi gaya browser). |
Otentikasi formulir (FORM) |
Perayap masuk dengan mengirimkan formulir HTML. Anda memberikan URL login, kredenSIAL, dan ekspresi XPath yang menemukan bidang formulir. | Situs yang menggunakan formulir HTML untuk masuk. |
Otentikasi SAML () SAML |
Perayap masuk melalui formulir login penyedia identitas SAML. Anda memberikan URL login IdP, kredenSIAL, dan ekspresi XPath yang menemukan bidang formulir. | Situs yang menggunakan SAML-based single sign-on. |
Prasyarat
Untuk situs web yang ingin Anda jelajahi, pastikan Anda:
-
Memiliki izin untuk merayapi situs web dan isinya.
-
Konfir
robots.txtmasikan bahwa untuk situs tidak melarang URL yang ingin Anda jelajahi. Web Crawler secara default tidak mengizinkan jikarobots.txtfile tidak ditemukan. -
Jika situs memerlukan login, identifikasi metode otentikasi (dasar, formulir, atau SAML). Untuk formulir dan SAML, cari ekspresi XPath untuk bidang nama pengguna, bidang kata sandi, dan tombol kirim di halaman login. Untuk menemukan XPath, buka menu konteks (klik kanan) untuk elemen formulir di browser Anda dan pilih Inspect, lalu salin XPath dari alat pengembang.
Di AWS akun Anda, pastikan Anda:
-
Jika situs Anda memerlukan otentikasi, simpan kredensibilitas Anda secara AWS Secrets Manager rahasia dan catat Nama Sumber Daya Amazon (ARN) nya. Untuk pasangan kunci-nilai yang tepat, lihat. Kredensi otentikasi
-
Sertakan izin yang diperlukan untuk terhubung ke sumber data Anda dalam role/permissions kebijakan AWS Identity and Access Management (IAM) untuk basis pengetahuan Anda. Untuk informasi tentang izin yang diperlukan, lihatIzin untuk mengakses sumber data Anda.
Cara mengatur sumber data Web Crawler
Menyiapkan sumber data Web Crawler melibatkan langkah-langkah berikut:
-
(Jika situs Anda memerlukan login) Siapkan kredensifikasi. Simpan kredenSIAL untuk metode otentikasi Anda secara AWS Secrets Manager rahasia. Lihat Kredensi otentikasi.
-
Hubungkan sumber data. Buat sumber data Web Crawler di basis pengetahuan menggunakan Konsol Manajemen AWS atau API. Lihat Buat sumber data.
Buat sumber data
Parameter konektor
Konfigurasi sumber data menggunakan parameter konektor berikut. Untuk menggunakan Web Crawler, tentukan WEB sebagai tipe konektor diconnectorParameters. Untuk bidang yang membungkus connectorParameters (seperti deletionProtectionConfiguration danmediaExtractionConfiguration), lihatMenghubungkan sumber data.
| Bidang | Diperlukan | Deskripsi |
|---|---|---|
seedUrls |
Bersyarat | Daftar URL benih untuk memulai crawling. Maksimum 10. Diperlukan kecuali Anda memberikansiteMapUrls. |
siteMapUrls |
Bersyarat | Daftar URL peta situs. Maksimal 3. Diperlukan kecuali Anda memberikanseedUrls. |
authType |
Ya | Jenis otentikasi:NO_AUTH,BASIC_AUTH,FORM, atauSAML. Lihat Metode autentikasi. |
secretArn |
Bersyarat | ARN AWS Secrets Manager rahasia yang berisi kredensimalmu. Diperlukan authType ketika tidakNO_AUTH. |
| Bidang | Diperlukan | Deskripsi |
|---|---|---|
crawlDepth |
Tidak | Kedalaman merangkak maksimum. Rentang 0—10. 0hanya merayapi URL yang ditentukan; nilai yang lebih tinggi mengikuti tautan lebih dalam ke situs. Default ke 2. |
maxLinksPerUrl |
Tidak | Tautan maksimum untuk diikuti per URL. Rentang 1—1000. Default ke 100. |
maxCrawledUrlsPerMinute |
Tidak | URL maksimum yang dirayapi per menit (batas tarif). Rentang 1—300. |
implicitWaitInSeconds |
Tidak | Tunggu waktu, dalam hitungan detik, setelah halaman mencapai status siap sebelum crawler membacanya. Tingkatkan ini untuk halaman dengan JavaScript konten dinamis yang dimuat setelah template utama. |
syncScope |
Tidak | Ruang lingkup tautan untuk diikuti. Salah satu dari PATH_SPECIFIC (host yang sama dan jalur URL awal yang sama dengan URL benih), DOMAINS_ONLY (host yang sama dengan URL benih, jalur apa pun), atau SUB_DOMAINS (domain utama yang sama, termasuk subdomain). Saat dihilangkan, crawler hanya merayapi host yang sama dan jalur URL awal yang sama dengan URL benih. |
crawlAttachments |
Tidak | Apakah akan merayapi file dan lampiran yang ditautkan dari halaman web (seperti PDF dan dokumen lainnya). |
| Bidang | Diperlukan | Deskripsi |
|---|---|---|
inclusionPatterns |
Tidak | Daftar ekspresi reguler. Hanya URL yang cocok dengan setidaknya satu pola yang akan dirayapi dan diindeks. |
exclusionPatterns |
Tidak | Daftar ekspresi reguler. URL yang cocok dengan pola apa pun tidak akan di-crawl atau diindeks. |
maxFileSizeInMegaBytes |
Tidak | Ukuran maksimum, dalam megabyte, dari setiap file tunggal yang dicerna oleh crawler. Berikan sebagai string numerik (misalnya,"500"). Default ke "500". |
Kredensi otentikasi
Jika situs web Anda memerlukan otentikasi, simpan kredensibilitas Anda secara AWS Secrets Manager rahasia. Format rahasia tergantung pada jenis otentikasi yang Anda pilih.
Otentikasi dasar (BASIC_AUTH)
{ "userName": "your-username", "password": "your-password", "authentication": "BASIC_AUTH" }
Otentikasi formulir (FORM)
Untuk otentikasi berbasis formulir, berikan ekspresi XPath yang mengidentifikasi bidang nama pengguna, bidang kata sandi, dan tombol kirim pada halaman login.
{ "authentication": "FORM", "loginPageUrl": "https://example.com/login", "userName": "your-username", "password": "your-password", "userNameFieldXpath": "//input[@name='username']", "passwordFieldXpath": "//input[@name='password']", "userNameButtonXpath": "//button[@type='submit']", "passwordButtonXpath": "//button[@type='submit']" }
Otentikasi SAML () SAML
Untuk otentikasi SAML, berikan URL halaman login penyedia identitas SAML dan ekspresi XPath untuk bidang formulir.
{ "authentication": "SAML", "loginPageUrl": "https://your-idp.example.com/login", "userName": "your-username", "password": "your-password", "userNameFieldXpath": "//input[@name='username']", "passwordFieldXpath": "//input[@name='password']", "userNameButtonXpath": "//button[@type='submit']", "passwordButtonXpath": "//button[@type='submit']" }
catatan
Untuk menemukan XPath di browser Anda, buka menu konteks (klik kanan) untuk elemen formulir di halaman login dan pilih Per iksa. Di alat pengembang, buka menu konteks (klik kanan) untuk HTML yang disorot, lalu pilih Sal in, lalu pilih Salin XPath.
Pemecahan masalah
| Gejala | Kemungkinan penyebabnya | Memperbaiki |
|---|---|---|
| Sinkronisasi berhasil diselesaikan tetapi hanya URL benih yang diindeks. | Tautan navigasi situs terhubung melalui JavaScript event handler (klik, gulir, menu dinamis) alih-alih <a href="..."> elemen standar. Perayap merender JavaScript tetapi tidak mensimulasikan interaksi pengguna, sehingga tidak dapat menemukan tautan tersebut. |
Berikan URL benih tambahan untuk halaman yang ingin Anda jelajahi, atau berikan URL peta situs yang mencantumkan setiap URL yang akan dirayapi. Jika konten dapat diekspor sebagai file, pertimbangkan untuk menggunakan konektor Amazon S3 sebagai gantinya. |
| Sinkronisasi tidak mengembalikan konten atau halaman lebih sedikit dari yang diharapkan. | robots.txtFile situs tidak mengizinkan URL yang ingin Anda jelajahi, atau halaman memiliki tag noindex meta. |
Perbarui robots.txt untuk host sehingga memungkinkan jalur yang ingin Anda jelajahi, atau hapus tag noindex meta dari halaman yang ingin Anda indeks. Jangan memblokir halaman robots.txt jika Anda juga ingin deteksi tag meta, karena crawler harus mengakses halaman untuk membaca tag meta. |
| Otentikasi gagal (HTTP 401 atau 403, loop pengalihan login, atau batas waktu sesi). | KredenSIAL salah atau kedaluwarsa, atau ekspresi XPath tidak cocok dengan elemen halaman login. | Verifikasi kredenSIAL dalam rahasia Anda. Untuk FORM atau SAML autentikasi, validasi setiap XPath di alat pengembang browser Anda, dan verifikasi. loginPageUrl |
| Sinkronisasi gagal dengan pembatasan kecepatan (HTTP 429) atau konten yang tidak lengkap. | Perayap mengambil halaman lebih cepat dari yang diizinkan situs. | Men maxCrawledUrlsPerMinute urunkan, atau meningkat implicitWaitInSeconds untuk situs dengan konten dinamis yang dimuat setelah halaman siap. |
| Halaman hilang karena lebih besar dari yang diharapkan. | Halaman atau lampiran melebihimaxFileSizeInMegaBytes. |
TingkatkanmaxFileSizeInMegaBytes, atau terima bahwa file yang lebih besar dari batas tidak dicerna. |