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

Bagaimana untuk mengikis laman web javascript dengan Python?

WBOY
WBOYke hadapan
2024-02-10 15:40:041129semak imbas

如何用 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 []

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

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()

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!

Kenyataan:
Artikel ini dikembalikan pada:stackoverflow.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam