2017-07-27 4 views
-1

Notwendigkeit Website Inhalt mit BeautifulSoup nach dem Klicken auf eine Schaltfläche, die Formular enthüllt, die ich brauche, verschrotten müssen. Ich benutze Selenium, um auf den Knopf zu klicken. Mit anderen Worten, ich weiß nicht, wie ich die Website verschrotten soll, nachdem ich einige Aktionen vorgenommen habe, die den Standardinhalt ändern.Scraping Website nach einigen Änderungen daran

I klicken, um diesen Code verwenden:

from bs4 import BeautifulSoup 
from selenium import webdriver 

site= "http://example.com" 

dr = webdriver.PhantomJS('./phantomjs') 
dr.get(site) 

loginButton = dr.find_element_by_xpath("//button[@ID='someId']") 
loginButton.click() 

Antwort

0

In dem Import Abschnitt:

from bs4 import BeautifulSoup 
from selenium.webdriver.common.by import By 
from selenium.webdriver.support import expected_conditions as EC 
from selenium.webdriver.support.select import Select 
from selenium.webdriver.support.ui import WebDriverWait 

Sie, bis alles warten Sie brauchen, ist geladen, zum Beispiel

WebDriverWait(dr, 30).until(
    EC.presence_of_all_elements_located((By.TAG_NAME, 'select')) 
) 

und dann Sie füttern Web-Treiber-Seitenquelle BeautifulSoup

source = BeautifulSoup(dr.page_source, "html.parser") 
Verwandte Themen