Maison > développement back-end > Tutoriel Python > Comment scraper un site Web javascript avec Python ?

Comment scraper un site Web javascript avec Python ?

WBOY
Libérer: 2024-02-10 15:40:04
avant
1164 Les gens l'ont consulté

如何用 Python 抓取 javascript 网站?

Contenu de la question

J'essaie d'explorer un site Web. J'ai essayé d'utiliser les deux méthodes, mais aucune ne me donne le code source complet du site Web que je recherche. J'essaie de récupérer les gros titres de l'actualité à partir de l'URL du site Web fournie ci-dessous.

Site Web : "https://www.todayonline.com/"

Voici deux méthodes que j’ai essayées et qui ont échoué.

Méthode 1 : Belle soupe

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 []
Copier après la connexion

Méthode 2 : sélénium + 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
Copier après la connexion

S'il vous plaît, aidez-moi. J'ai essayé de gratter d'autres sites d'actualités et c'est beaucoup plus facile. Merci.


Bonne réponse


Vous pouvez accéder aux données via l'api (regardez l'onglet "Réseau") :

Par exemple,

import requests
url = "https://www.todayonline.com/api/v3/news_feed/7"
data = requests.get(url).json()
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:stackoverflow.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal