Saya sedang membina sambungan krom dan saya mahu menjalankan skrip python dari PC saya dengan mengklik butang dalam sambungan (pada asasnya HTML). Skrip python menggunakan pemacu web selenium untuk mengikis data daripada tapak web dan menyimpannya dalam fail log lain.
Anda pada asasnya menggunakan nativeMessaging. Ia membolehkan anda mencipta jambatan komunikasi antara sambungan anda dan proses luaran (seperti python).
nativeMessaging berfungsi pada komputer anda dan berkomunikasi dengan sambungan Chrome melalui stdin dan stdout. Contohnya:
Menghos dengan Python
Beginilah cara anda menulis hos nativeMessaging dalam python, saya telah sertakan contoh penuh daripada dokumentasi tetapi lebih mudah difahami dengan kod yang lebih sedikit.
host.py
Ini pada asasnya adalah pelayan gema yang menghormati stdin dan stdout, memastikan ia dihantar sebagai aliran binari.
host.json
Ini mentakrifkan hos python komunikasi, memastikan panduan sambungan ialah panduan sambungan anda.
Hos.bat
Ini akan menjalankan python boleh laku.
Pasang host.bat
Anda menjalankan ini sekali untuk mendaftarkan hos anda dengan sistem pengendalian.
Sambungan Chrome
manifest.json
Tambah
nativeMessing
kebenarankomunikasi.js
Untuk menyambung ke hos python, anda perlu melakukan perkara berikut:
Untuk menghantar mesej kepada hos python anda, hanya hantar objek json ke port.
Untuk mengetahui ralat semasa memutuskan sambungan:
Contoh penuh adalah dalam dokumentasi, saya hanya menamakan semula beberapa perkara untuk kejelasan, berfungsi pada Windows/Unix https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions /docs/examples /api/nativeMessaging