Wenn es sich um eine in JS usw. geschriebene Site handelt, können Sie sie möglicherweise nicht mit Beautiful Soup abkratzen. In solchen Fällen kann Selen verwendet werden.
(Für Mac)
Auf der Download-Seite (https://chromedriver.chromium.org/downloads)
Laden Sie im folgenden Teil den Chrome-Treiber herunter, der der oben untersuchten Version entspricht. (Wählen Sie das Betriebssystem am Ziel der Seitenverknüpfung aus.)
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
import time
url="~~~~~~"#URL, die Sie hier öffnen möchten
options = Options()
options.add_argument('--headless') #Aktivieren Sie den Headless-Modus
Driver_path="~~~~~~" #Geben Sie den Speicherort an, an dem sich der heruntergeladene Chrome-Treiber befindet
driver = webdriver.Chrome(Driver_path,options=options)
driver.get(url)
time.sleep(2)
html = driver.page_source.encode('utf-8')
soup = BeautifulSoup(html, 'lxml')
#Danach können Sie es normal gemäß der Grammatik von Beautiful Soup verwenden.
Durch Hinzufügen einer Option wird verhindert, dass die Seite bei jeder Ausführung von driver.get geöffnet wird. (Dies beschleunigt den Vorgang etwas.)
Drei Einstellungen, um Selen stabil zu machen (unterstützt auch den Headless-Modus)
Recommended Posts