<p>
<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!