通过登录名访问网站后,尝试在单独的页面上抓取两个表。尝试了几种不同的方法,无法解决。 最后一次尝试显示了一些希望,但是只有第一个数据帧被追加到数据帧列表中。类似于以下内容:
from selenium import webdriver
import pandas as pd
import requests
import time
from bs4 import BeautifulSoup as BS
def text_to_chart (url,table) :
df_list = []
driver = webdriver.Chrome(path)
driver.get(login)
driver.find_element_by_xpath(password block).send_keys(password)
driver.find_element_by_xpath(username block).send_keys(username)
driver.find_element_by_xpath(submit).click()
time.sleep(10)
df = pd.DataFrame()
for url,table in zip(urls,tables) :
driver.get(url)
time.sleep(10)
soup = BS(driver.page_source,'html')
new_table = soup.find_all('table',attrs = {'class': table})
results_list = pd.read_html(str(new_table[0]))
df = df.append(pd.DataFrame(results_list[0]))
return df
def scrape(url,table)
df_list = []
df_list = df_list.append(text_to_chart(url,table))
scrape(url_list,table_list)
那么,我应该怎么抓取多个页面?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。