Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimana Python Boleh Mengikis Kandungan Laman Web Dinamik?

Bagaimana Python Boleh Mengikis Kandungan Laman Web Dinamik?

Barbara Streisand
Lepaskan: 2024-12-21 10:48:16
asal
626 orang telah melayarinya
<p>How Can Python Scrape Dynamic Website Content?

<p>Memotong Kandungan Dinamik dengan Python

<p>Mendapatkan teks biasa daripada HTML statik adalah mudah, tetapi kandungan dinamik adalah cerita yang berbeza. JavaScript membenamkan kandungan yang tidak boleh diakses serta-merta kepada perpustakaan permintaan HTTP Python seperti urllib2.

<p>Mengakses Kandungan Dinamik

<p>Untuk mengakses kandungan dinamik, Python boleh memanfaatkan alatan luaran yang mensimulasikan web pelayar. Alat ini melaksanakan JavaScript dan mengembalikan kandungan halaman yang diberikan.

<p>1. Selenium dengan PhantomJS:

  • Pasang PhantomJS (pelayar tanpa kepala) dan pastikan ia berada dalam laluan anda.
  • Gunakan pustaka Python Selenium untuk menjadikan PhantomJS sebagai pemacu web.
  • Navigasi ke halaman sasaran dan cari elemen minat.
<p>2. dryscape (Python 2 sahaja):

  • Pasang dryscrape menggunakan pip.
  • Buka sesi dryscrape dan lawati halaman sasaran.
  • Dapatkan semula halaman yang diberikan kandungan sebagai a rentetan.
<p>Contoh

<p>Pertimbangkan contoh halaman HTML dengan JavaScript dinamik:

<p>
Salin selepas log masuk
Salin selepas log masuk
<p>Tanpa JS sokongan:

import requests
from bs4 import BeautifulSoup

response = requests.get(my_url)
soup = BeautifulSoup(response.text)
print(soup.find(id="intro-text"))
Salin selepas log masuk
<p>Output:

<p>
Salin selepas log masuk
Salin selepas log masuk
<p>Dengan sokongan JS (Selenium):

from selenium import webdriver

driver = webdriver.PhantomJS()
driver.get(my_url)
print(driver.find_element_by_id("intro-text").text)
Salin selepas log masuk
<p>Output:

Yay! Supports javascript
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana Python Boleh Mengikis Kandungan Laman Web Dinamik?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan