【问题标题】:Unable to parse data with BeautifulSoup: Python3无法使用 BeautifulSoup 解析数据:Python3
【发布时间】:2019-04-13 09:15:14
【问题描述】:

[请点击这里查看标签][1]

以下是我正在抓取的网站的表格之一。在这里,在“tbody”下,我希望单击奇数类和偶数类下的“MS”按钮标签,这为我提供了一个不同的表格来进一步解析它。 我正在使用 Selenium 和 Python 3 来执行 Web 抓取。 当前代码仅单击第一行中的“MS”按钮。如何创建一个 for 循环,以便遍历所有行并单击所有行中的“MD”元素?

谢谢。

以下是代码:

table_0=table.find_element_by_tag_name('tbody')
  for buttons in table_0.find_elements_by_tag_name("tr"):
     buttons.find_elements_by_xpath('//tr[@class="odd"]')
     buttons.find_element_by_xpath('//button[text()="MS"]').click()
  for buttons in table_0.find_elements_by_tag_name("tr"):
     buttons.find_elements_by_xpath('//tr[@class="even"]')
     buttons.find_element_by_xpath('//button[text()="MS"]').click()

【问题讨论】:

  • 可以提供网址吗?请使用通过edit 提供的sn-p 工具插入html,以便我们可以复制粘贴。 MD文本内容元素在哪里?
  • @QHarr 以下是 URL:ibl.mdanderson.org/fasmic/#! 我将编辑问题,以便更容易复制。谢谢
  • @QHarr 是的,您可以输入一个字母,例如“A”,然后从下拉列表中选择“AKT1 (3 mutation)”。 go 按钮不起作用,因此您必须单击 enter 或 tab
  • 您是否尝试单击所有 3 行中的所有按钮?
  • @QHarr 不,只有在所有 3 行中都带有文本“MS”的按钮,因为它提供了我感兴趣的基因信息表

标签: python selenium-webdriver web-scraping beautifulsoup html-parsing


【解决方案1】:

您应该能够使用 CSS 选择器来收集那些以供点击

.btn-group.btn-group-xs button:first-child

选择器确实有效:

不确定您是否需要等待,但可能类似于:

elements = driver.find_elements_by_css_selector(".btn-group.btn-group-xs button:first-child")
for element in elements:
    element.click()

from selenium import webdriver
from selenium.webdriver.common.keys import Keys

driver = webdriver.Chrome()

driver.get("https://ibl.mdanderson.org/fasmic/#!/")
driver.find_element_by_css_selector("input[type='text']").send_keys("AKT1 (3 mutations)")
driver.find_element_by_css_selector("input[type='text']").send_keys(Keys.RETURN)

elements = driver.find_elements_by_css_selector(".btn-group.btn-group-xs button:first-child")
for element in elements:
    element.click()

【讨论】:

  • 手动执行时看不到任何变化,所以不确定应该发生什么变化。
  • 非常感谢!!!这行得通。我想我正在尝试使用基于类的逻辑来实现。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-12-09
  • 1970-01-01
  • 1970-01-01
  • 2018-09-12
  • 2012-10-04
相关资源
最近更新 更多