S'il s'agit d'un site écrit en JS etc., vous ne pourrez peut-être pas le gratter avec Beautiful Soup. Le sélénium peut être utilisé dans de tels cas.
(Pour Mac)
Sur la page de téléchargement (https://chromedriver.chromium.org/downloads),
Dans la partie suivante, téléchargez le pilote chrome qui correspond à la version examinée ci-dessus. (Sélectionnez le système d'exploitation à la destination du lien de page.)
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
import time
url="~~~~~~"#URL que vous souhaitez ouvrir ici
options = Options()
options.add_argument('--headless') #Activer le mode sans tête
Driver_path="~~~~~~" #Spécifiez l'emplacement où le pilote Chrome téléchargé est placé
driver = webdriver.Chrome(Driver_path,options=options)
driver.get(url)
time.sleep(2)
html = driver.page_source.encode('utf-8')
soup = BeautifulSoup(html, 'lxml')
#Après cela, vous pouvez l'utiliser normalement selon la grammaire de Beautiful Soup.
En ajoutant une option, la page ne peut pas être ouverte à chaque fois que driver.get est exécuté. (Cela accélérera un peu le processus.)
Recommended Posts