【发布时间】:2019-12-03 01:14:42
【问题描述】:
我想从https://powerhouse.net/forecast-prijzen-onbalans/ 上的“Elektriciteit NL”表中获取所有值。然而,在无休止地尝试使用 selenium 找到正确的 xpath 之后,我无法刮掉桌子。
我尝试使用“inspect”并从表中复制 xpath 以识别表的长度以便稍后抓取。在此失败后,我尝试使用“包含”,但这也没有成功。后来我用 BeautifullSoup 尝试了一些东西,但是没有任何运气。
#%%
import pandas as pd
from selenium import webdriver
import pandas as pd
#%% powerhouse Elektriciteit NL base & peak
url = "https://powerhouse.net/forecast-prijzen-onbalans/"
#%% open webpagina
driver = webdriver.Chrome(executable_path = path + 'chromedriver.exe')
driver.get(url)
#%%
prices = []
#loop for values in table
for j in range(len(driver.find_elements_by_xpath('//tr[@id="endex_nl_forecast"]/div[3]/table/tbody/tr[1]/td[4]'))):
base = driver.find_elements_by_xpath('//tr[@id="endex_nl_forecast"]/div[3]/table/tbody/tr[1]/td[4]')[j]
#%%
#trying with BeautifulSoup
from bs4 import BeautifulSoup
import requests
response = requests.get(url)
soup = BeautifulSoup(response.content, "html.parser")
table = soup.find('table', id = 'endex_nl_forecast')
rows = soup.find_all('tr')
我想将表格放在数据框中,并了解 xpath 的确切工作原理。我对整个概念有点陌生。
【问题讨论】:
标签: python selenium web-scraping beautifulsoup python-requests