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

Comment scraper un site Web javascript avec Python ?

WBOY
WBOYavant
2024-02-10 15:40:041129parcourir

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

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

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

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!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer