<p>好了,伙计们,我实际上用硒解决了这个问题,我必须更新我的硒包,它就像一个符咒</p>
<p>我是这样做的:</p>
<pre><code> import pandas as pd
from selenium import webdriver
link='http://www.moneycontrol.com/stocks/histstock.php'
driver=webdriver.Chrome()
driver.get(link)
#selecting the index in Step 1
driver.find_element_by_xpath('//*[@id="wutabs2"]').click()
#Selecting from the dropdown Index options in step 2
drop=driver.find_element_by_xpath('//*[@id="indian_indices"]')
drop.click()
drop.send_keys('S&P BSE MIDCAP')
#select the month in step 3
month=driver.find_element_by_xpath('/html/body/div[3]/div[3]/div/div[7]/div[2]/div[6]/table/tbody/tr/td[3]/form/div[2]/select[2]')
month.click()
month.send_keys('2019')
#click on search
driver.find_element_by_xpath('/html/body/div[3]/div[3]/div/div[7]/div[2]/div[6]/table/tbody/tr/td[3]/form/div[4]/input[1]').click()
#getting the contents
for i in driver.find_elements_by_css_selector('table.tblchart'):
a=i.text
a=a.split('\n')
#storing it as a data frame
df=pd.DataFrame(a)
#removing the first column as it contained table headers
df.drop(df.iloc[0:1,:],inplace=True)
#splitting the columns using space and storing them seperately
df['Month']=df[0].str.split(' ', expand=True)[0]
df['Year']=df[0].str.split(' ', expand=True)[1]
df['Open']=df[0].str.split(' ', expand=True)[2]
df['High']=df[0].str.split(' ', expand=True)[3]
df['Low']=df[0].str.split(' ', expand=True)[4]
df['Close']=df[0].str.split(' ', expand=True)[5]
</code></pre>