Python 如何在具有多个选项卡的网站上定位div标记
我正在尝试使用多个信息选项卡从以下网站提取数据:。我只对“ICO”信息选项卡下的信息感兴趣,但我无法找到此信息选项卡下的所有div标记 我尝试用class=info框查找所有div标签,但这只返回网站上第一个info选项卡“Details”中包含的信息。我猜这是因为当网站打开时,所有“ICO”信息都被隐藏了。我当前的代码如下,它只允许我从“Details”表中提取信息 请帮助在“ICO”信息选项卡下找到div标签Python 如何在具有多个选项卡的网站上定位div标记,python,web-scraping,beautifulsoup,Python,Web Scraping,Beautifulsoup,我正在尝试使用多个信息选项卡从以下网站提取数据:。我只对“ICO”信息选项卡下的信息感兴趣,但我无法找到此信息选项卡下的所有div标记 我尝试用class=info框查找所有div标签,但这只返回网站上第一个info选项卡“Details”中包含的信息。我猜这是因为当网站打开时,所有“ICO”信息都被隐藏了。我当前的代码如下,它只允许我从“Details”表中提取信息 请帮助在“ICO”信息选项卡下找到div标签 我还没有测试过我的代码,但是上面应该会给出所有的信息。我会使用等待条件和属性=值选
我还没有测试过我的代码,但是上面应该会给出所有的信息。我会使用等待条件和属性=值选择器来定位要单击的选项卡,单击它,然后使用显示的css选择器组合
from bs4 import BeautifulSoup as bs
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
browser = webdriver.Chrome()
browser.get("https://www.cryptocompare.com/coins/abt/overview")
WebDriverWait(browser, 10).until(EC.element_to_be_clickable((By.CSS_SELECTOR, '[aria-controls="tab-content-1"]'))).click()
soup = bs(browser.page_source, 'lxml')
browser.quit()
print([i.text.strip() for i in soup.select('.coin-properties .ng-binding')])
谢谢你的回答,但我尝试了一下,结果它返回了一个空列表[]
page = requests.get(url)
if page.status_code == 200:
soup = BeautifulSoup(page.content, 'lxml')
details = soup.find_all('div', class_ ='col-md-4 col-sm-4 col-xs-6 ng-scope')
from bs4 import BeautifulSoup as bs
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
browser = webdriver.Chrome()
browser.get("https://www.cryptocompare.com/coins/abt/overview")
WebDriverWait(browser, 10).until(EC.element_to_be_clickable((By.CSS_SELECTOR, '[aria-controls="tab-content-1"]'))).click()
soup = bs(browser.page_source, 'lxml')
browser.quit()
print([i.text.strip() for i in soup.select('.coin-properties .ng-binding')])