Rumah >pembangunan bahagian belakang >Tutorial Python >Mengapa Skrip Selenium InstaPy Saya pada Pelayan DigitalOcean Terus Mendapat \'ID Sesi Tidak Sah\' dan \'Sesi Dipadamkan Kerana Rapat Halaman\'?

Mengapa Skrip Selenium InstaPy Saya pada Pelayan DigitalOcean Terus Mendapat \'ID Sesi Tidak Sah\' dan \'Sesi Dipadamkan Kerana Rapat Halaman\'?

DDD
DDDasal
2024-11-23 10:29:11471semak imbas

Why Does My Selenium InstaPy Script on a DigitalOcean Server Keep Getting

ralat tidak diketahui: sesi dipadamkan kerana ranap halaman daripada ralat tidak diketahui: tidak dapat menentukan status pemuatan daripada tab ranap dengan ChromeDriver Selenium

Soalan:

Dalam InstaPy, ralat berlaku secara berkala apabila menjalankan Python dan Skrip selenium daripada Cron. Mesej ralat menunjukkan "id sesi tidak sah" dan "ralat tidak diketahui: sesi dipadamkan kerana ranap halaman daripada ralat tidak diketahui: tidak dapat menentukan status pemuatan daripada tab ranap." Walaupun menyiarkan pada GitHub Repo, isu itu masih tidak dapat diselesaikan. Skrip berjalan pada pelayan ubuntu lautan digital mod tanpa kepala dengan pemacu web Chrome. Apakah yang boleh menyebabkan masalah ini dan bagaimanakah ia boleh dibetulkan?

Jawapan:

Pengecualian utama yang menyebabkan ralat ialah:

selenium.common.exceptions.WebDriverException: Message: unknown error: session deleted because of page crash
from unknown error: cannot determine loading status
from tab crashed

Untuk menangani isu ini, pertimbangkan penyelesaian berikut:

  • Tambah yang berikut chrome_options:

    chrome_options.add_argument('--no-sandbox')
  • Betulkan saiz /dev/shm yang kecil:

    sudo mount -t tmpfs -o rw,nosuid,nodev,noexec,relatime,size=512M tmpfs /dev/shm
  • Kongsi hos /dev/shm pilihan:

    -v /dev/shm:/dev/shm
  • Lumpuhkan penggunaan /dev/shm:

    chrome_options.add_argument('--disable-dev-shm-usage')

dari tab ranap:

Ralat ini berkaitan dengan sistem pengendalian Linux cuba untuk sentiasa menggunakan /dev/shm untuk memori tidak boleh laksana. Pembaikan telah dilaksanakan dengan Chrome v65.0.3299.6.

Rujukan:

  • [org.openqa.selenium.SessionNotCreatedException: sesi tidak dicipta pengecualian daripada tab ralat ranap apabila melaksanakan daripada Jenkins CI pelayan](https://stackoverflow.com/questions/50364109/org-openqa-selenium-sessionnotcreatedexception-session-not-created-exception)

Atas ialah kandungan terperinci Mengapa Skrip Selenium InstaPy Saya pada Pelayan DigitalOcean Terus Mendapat \'ID Sesi Tidak Sah\' dan \'Sesi Dipadamkan Kerana Rapat Halaman\'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn