Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimana untuk mengikis laman web javascript dengan Python?

Bagaimana untuk mengikis laman web javascript dengan Python?

WBOY
Lepaskan: 2024-02-10 15:40:04
ke hadapan
1163 orang telah melayarinya

如何用 Python 抓取 javascript 网站?

Kandungan soalan

Saya cuba merangkak tapak web. Saya telah mencuba menggunakan kedua-dua kaedah, tetapi tidak memberikan saya kod sumber tapak web penuh yang saya cari. Saya cuba mengikis tajuk berita dari url tapak web yang disediakan di bawah.

Laman web: "https://www.todayonline.com/"

Berikut adalah dua kaedah yang saya cuba dan gagal.

Kaedah 1: Sup Cantik

tdy_url = "https://www.todayonline.com/"
page = requests.get(tdy_url).text
soup = beautifulsoup(page)
soup  # returns me a html with javascript text
soup.find_all('h3')

### returns me empty list []
Salin selepas log masuk

Kaedah 2: selenium + beautifulsoup

tdy_url = "https://www.todayonline.com/"

options = Options()
options.headless = True

driver = webdriver.Chrome("chromedriver",options=options)

driver.get(tdy_url)
time.sleep(10)
html = driver.page_source

soup = BeautifulSoup(html)
soup.find_all('h3')

### Returns me only less than 1/4 of the 'h3' tags found in the original page source
Salin selepas log masuk

Tolong bantu. Saya telah cuba mengikis laman berita lain dan ini lebih mudah. Terima kasih.


Jawapan betul


Anda boleh mengakses data melalui api (lihat tab "Rangkaian"):

Sebagai contoh,

import requests
url = "https://www.todayonline.com/api/v3/news_feed/7"
data = requests.get(url).json()
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk mengikis laman web javascript dengan Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:stackoverflow.com
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan